make matlab read the files in order?

3 次查看(过去 30 天)
I am using a code to read and calculate mass center. but the code read file with this oder:
Now reading C:\Users\shape_01.dat
Now reading C:\Users\shape_010.dat
Now reading C:\Users\shape_0100.dat
Now reading C:\Users\hape_0101.dat
so i get wrong orders for my output results.
because i need matlab to process my file in normal order: 1 2 3 4 4 5 ...
please is there any suggestion how to solve that?
  2 个评论
Stephen23
Stephen23 2020-11-4
@RBC MAN: are those binary numbers?
Or are they decimal numbers from which you happen to have only shown numbers using the digits 0 and 1 ?
Tesla
Tesla 2020-11-4
Not binary, they are decimal, I just share the first 4 file, i have in total 501 files.
indeed it looks like that
Now reading C:\Users\shape_01.dat
Now reading C:\Users\shape_010.dat
Now reading C:\Users\shape_0100.dat
Now reading C:\Users\shape_0101.dat
Now reading C:\Users\shape_0102.dat
Now reading C:\Users\shape_0103.dat
Now reading C:\Users\shape_0104.dat
Now reading C:\Users\shape_0105.dat
Now reading C:\Users\shape_0106.dat
Now reading C:\Users\shape_0107.dat
........

请先登录,再进行评论。

采纳的回答

Stephen23
Stephen23 2020-11-4
编辑:Stephen23 2021-4-18
Adapting from the examples in the NATSORTFILES documentation:
..
S = dir(fullfile(myFolder,'shape_0*.txt'));
S = natsortfiles(S); % alphanumeric sort by filename
for k = 1:numel(S)
baseFileName = S(k).name;
..
end

更多回答(1 个)

Walter Roberson
Walter Roberson 2020-11-4

类别

Help CenterFile Exchange 中查找有关 Entering Commands 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by