我的目录中有400个文件。其中有文件名H1001,H1002,H1003 ....我想在matlab中读取这些文件
当我使用该代码时,它会给我错误。
'd=dir('C:\Users\Desktop\New\*.txt')>
<num_files=length(d)>
data=cell(1,num_files);
for k = 1:400
myfilename = sprintf('H1%3d.txt',k);
mydata{k} = importdata(myfilename);
end'
显示
myfilename=H1 1
。这是错误的文件名H1001。所以在下一行中出现错误。
它没有读00.它给出了空白。
任何机构都可以告诉我答案。
答案 0 :(得分:1)
如果您希望零填充右调整值,则正确的格式字符串不是%3d
(右侧用空格调整)而是%03d
;
for k = 1:400
myfilename = sprintf('H1%03d.txt',k);
mydata{k} = importdata(myfilename);
end
中很容易看出差异
> printf('H1%3d.txt\n', 7);
H1 7.txt
> printf('H1%03d.txt\n', 7);
H1007.txt