For Loop - need to iterate values at the same time.
2 次查看(过去 30 天)
显示 更早的评论
Hi there! I am trying to set up for loops that iterate two values at the same time in order to retrieve files with 2 changing variables. My current setup is to do the following (I am trying to use a nested for loop since I know that you cannot do a loop with 2 variables in one):
for x = [1:10]
fstart = 'D:\Michael Files\Data\Run ';
f2 = sprintf('%05d', x);
f3 = '\Ascii\Xxsv00001 ';
for y = [267:277]
fend = sprintf('%03dX.txt', y);
end
fname = [fstart f2 f3 fend];
disp(fname)
end
In the end, this is the output that I get from Matlab. The Run numbers iterate correctly, but I ultimately need the last number to iterate as well:
D:\Michael Files\Data\Run 00001\Ascii\Xxsv00001 267X.txt
...
D:\Michael Files\Data\Run 00010\Ascii\Xxsv00001 277X.txt
If anyone knows a good way to do this I'd really appreciate the help! Thank you so much!!
0 个评论
采纳的回答
Kevin Holly
2021-8-27
for x = [1:10]
fstart = 'D:\Michael Files\Data\Run ';
f2 = sprintf('%05d', x);
f3 = '\Ascii\Xxsv00001 ';
y = 266+x;
fend = sprintf('%03dX.txt', y);
fname = [fstart f2 f3 fend];
disp(fname)
end
2 个评论
Stephen23
2021-8-27
Note that FULLFILE is recommended (rather than concatenating strings together):
更多回答(1 个)
the cyclist
2021-8-27
Even easier:
for x = 1:10
fname = sprintf('D:\\Michael Files\\Data\\Run %05d\\Ascii\\Xxsv00001 %03dX.txt',x,x+266);
disp(fname)
end
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!