用当前时间保存工作区。 MAtlab

问题描述 投票:0回答:2

我想将所有模拟变量保存到当前时间。

我的解决方案:

t = datetime('now','Format','dd-MM-yyyy''_T''HHmmss');
t2 = datevec(t);
DateString = datestr(t2);
filename=[DateString,' all_variables_main '];
save(filename )
savefig(filename)

以下错误是在Matlab中给出的:

Unable to write file 26-Oct-2019 09:47:15 all_variables_main : Invalid argument.

我做错了什么?

matlab save save-as
2个回答
0
投票

mat文件名中不能包含空格或冒号。您可以使用以下命令以文件名中允许的格式直接获取日期和时间:

>> fileName = [datestr(now, 'dd-mmm-yyyy_HHMMSS') '_all_variables_main']
fileName =
    '26-Oct-2019_103123_all_variables_main'
>> save(fileName)

0
投票

包含:字符的文件名不是有效的文件名。

您可以用“꞉”字符替换:。参见:How to get a file in Windows with a colon in the filename?

您可以用有效用于文件名的:字符(看起来像冒号的Unicode字符A789)替换所有

filename(filename == ':') = char(hex2dec('A789'));

加载文件时,请确保使用正确的字符。

注:以上解决方案已在Windows 10和MATLAB R2016a中测试。

© www.soinside.com 2019 - 2024. All rights reserved.