我正在研究一个我在excel文件中读取的项目,并根据该数据制作一个图。我需要记下我打开的文件名,添加字母' a'到最后,然后将我的情节保存为.jpg。我现在的方式看起来应该是正常的,但saveas不喜欢文件名并给我一个无效的文件名错误。以下是我工作的一个示例:
filename = 'C:\ExcelTest\T1.xlsm'
>filename =
> C:\ExcelTest\T1.xlsm
pathnfile = strread(filename, '%s', 'delimiter', '.')
>pathnfile =
> 'C:\ExcelTest\T1'
> 'xlsm'
pf1 = strcat(pathnfile(1), 'a')
>pf1 =
> 'C:\ExcelTest\T1a'
%... data collection, plotting in f1 = figure(1), etc.
saveas(f1, pf1, 'jpg')
>Error using saveas (line 81) Invalid filename
由于我正在更改文件,因此我使用了几次,如果可能的话,我真的想避免输入全名来保存。谢谢!
答案 0 :(得分:1)
看起来你通过滚动你自己的文件名解析器让你的生活更加复杂。我会选择像:
filename = 'C:\ExcelTest\T1.xlsm';
[pathstr, name, ~] = fileparts(filename);
pf1 = strcat(name, 'a');
saveas(f1, fullfile(pathstr, pf1), 'jpg');