我的代码如下:
files=dir('*.extension')
我需要根据名称自然地对'files'结构进行排序,例如files(i).name
。
如果我有file1,file2,file11,matlab命令file1,file11,file2,我想要file1,file2,file11。
有人能帮助我吗?
答案 0 :(得分:3)
您只需将文件名更改为file01,file02,file11即可。然后matlab将按照您想要的方式对它们进行排序。或者,如果您认为逐个更改文件名非常不方便,则可能需要写下一些代码:
for idx = 1:length(files)
seq(idx) = num2str(files(idx).name(5:end);
end
[~,ord] = sort(seq);
for idx = 1:length(files)
newfiles(idx)= files(ord(idx));
end