%0标识符不考虑whay零

时间:2016-04-10 07:15:01

标签: matlab identifier

我的目录中有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.它给出了空白。

任何机构都可以告诉我答案。

1 个答案:

答案 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