Increment file name by adding numbers in a loop
Ältere Kommentare anzeigen
I want to select data piecewise in a loop, and I want to be able to save the files as filename_number, where the number increases for each iteration of the loop. Is there an easy way to accomplish this?
The idea is: first selection, saved file name is file_1 second selection, saved file name is file_2 etc
Akzeptierte Antwort
Weitere Antworten (1)
Fangjun Jiang
am 11 Jul. 2011
BaseName='MyDataFile_';
for k=1:10
FileName=[BaseName,num2str(k)]
end
5 Kommentare
Alberto Rocha
am 17 Feb. 2017
And how do I use FileName to save data in disk? I tried
save FileName variable -ascii
but the file that is saved gets the name "FileName", and not "MyDataFile_1" or "MyDataFile_2" etc.
@Alberto Rocha: you have to use function syntax, not command syntax:
Or, to put it simply, you need to use the parentheses:
save(FileName,'X') % for variable X
Alberto Rocha
am 17 Feb. 2017
Thanks, Stephen!
Mohammed Aliakbar
am 19 Feb. 2018
Hi Fangjun, I tried this function and it work with me but when I tried to execute OpenSees.exe, it give me error as the following: BaseName='TS'; for k=1:3 FileName=[BaseName,num2str(k),'.tcl']; !OpenSees.exe FileName end and the message is as the following: couldn't read file "FileName": no such file or directory
Steven Lord
am 19 Feb. 2018
You can't use ! if the command you want the system to execute is going to be assembled using the contents of a variable. Use the system function instead, building the command you want the system to execute using concatenation (as you built FileName) or sprintf.
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!