Clear Filters
Clear Filters

Info

This question is closed. Reopen it to edit or answer.

How can I sort the filenames in order given by dir()? I cannot turn a structure into a character array which means I cannot use sort, any tiips?

1 view (last 30 days)
function frstarrv()
File_names = dir('*.csv'); %attain every waveform in the event folder
h = char(File_names);
j = sort(h);
numFiles = length(File_names);
incr = 1:numFiles;
for i = 1:numFiles %call graphData() for each waveform
file = File_names(i).name;
hold on
plus = incr(i);%needed to offset graphs for plotting
[pksa,l] = graphData(file,plus);
hold on
end
end
%end of firstarrv()***************************************************

Answers (2)

Walter Roberson
Walter Roberson on 23 Jun 2019
https://www.mathworks.com/matlabcentral/fileexchange/47434-natural-order-filename-sort

Sulaymon Eshkabilov
Sulaymon Eshkabilov on 23 Jun 2019
Hi,
You'd need to use this syntax for char() command: h = char(File_names.name);
With this, the command sort() sorts out the *.csv files in your current directory.
Good luck.

This question is closed.

Tags

Community Treasure Hunt

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

Start Hunting!