How to make a variable content part of a path

43 views (last 30 days)
I have a string variable, which is changing during the loop, it is named filename and it takes on values like 'file001.txt', 'file002.txt'... I am saving the files 'file001.txt', 'file002.txt' in a loop and would like to call the filename variable
>> fid_out = fopen('/Users/Y*****/Downloads/case_data/train2/3/"filename"', 'w'); at the place "filename", I would like it to be 'file001.txt', 'file002.txt'...... how can I realize that?

Accepted Answer

KL
KL on 20 Nov 2017
Edited: KL on 20 Nov 2017
filepath = '/Users/Y*****/Downloads/case_data/train2/3';
filename = 'file001.txt';
and then use fullfile
fid_out = fopen(fillfile(filepath,filename));
if you store your filenames in a cell array,
filenames {'file001.txt', 'file002.txt'};
then it's even better inside a loop
for fno = 1:numel(filenames)
fid_out{fno} = fopen(fillfile(filepath,filename{fno}));
%something
end
  2 Comments
TingTing
TingTing on 20 Nov 2017
Thank you so much. This works. Just an extra question. If I have i = 1,2,3,4... and want this i to be part of the path itself, i.e.,
/Users/Y*****/Downloads/case_data/train2/1' /Users/Y*****/Downloads/case_data/train2/2' /Users/Y*****/Downloads/case_data/train2/3'
What shall I do?
KL
KL on 20 Nov 2017
Just the same idea,
path_part1 = '/Users/Y*****/Downloads/case_data/train2';
path_part2 = {'1', '2', '3'};
filenames = {'file001.txt', 'file002.txt'};
then
fullfile(path_part1,path_part2{1},filenames{1})

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!