How do you insert the date and time as the file name when using xlswrite?

30 ビュー (過去 30 日間)
Lucas
Lucas 2016 年 1 月 29 日
コメント済み: Lucas 2016 年 1 月 29 日
Hi all,
I have seen solutions to this question but they don't appear to work when I try implementing them.
I want to create an Excel file using xlswrite, the data for the file are in a matrix called 'a'. In the matrix are data called from a server at specific times by a for loop. The loop runs for 1 hour and the halts. I want to write these data before the process starts again. I don't want to overwrite the file on the next run so I want to use xlswrite to export the data and by using the date and time in the file name each file will have a unique name.
I call the date and time using the datestr(now) function.
%%This writes a file with my data, but the file name is 'FileName'
FileName=sprintf('FileName_%s.xlsx',datestr(now)); xlswrite('FileName', a)
%%This does not work FileName=sprintf('FileName_%s.xlsx',datestr(now)); xlswrite(FileName, a)
Any help in doing this would be greatly appreciated.
Thanks,
Lucas

採用された回答

Ralf
Ralf 2016 年 1 月 29 日
Hi Lucas, that's because datestr(now) creates characters like colon (:) which are not allowed for file names. You should define your own date and time Format without These characters. Try
Filename = sprintf('test_%s.xlsx', datestr(now,'mm-dd-yyyy HH-MM'));
xlswrite(Filename, a)
That will work.
  1 件のコメント
Lucas
Lucas 2016 年 1 月 29 日
Many thanks for your help Ralf. That works perfectly well, you have saved me a lot of time!
Luke

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeDates and Time についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by