how to write in the text file?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
hi all, the following code is for writing all of data file names into text file, the problem is the name are not written in the text sequentially
clear
FN1 = 'JDA';
z = '0',
mn = 1:12;
yr = 9:13;
ext = '.ohh';
for k = 1:numel(yr);
if yr==9
tmp = sprintf('%s%s%03d%02d%s',FN1,z,yr(k),mn(k),ext)
fid = fopen(tmp,'rt');
end
tmp = sprintf('%s%03d%02d%s',FN1,yr(k),mn(k),ext)
fid = fopen(tmp,'rt');
end
filename = fopen('JDAraw.txt','w');
fprintf(fid,tmp);
If anyone can correct this for me, I'll appreciate the help.
0 Commenti
Risposta accettata
Thorsten
il 20 Ott 2015
FN1 = 'JDA';
mn = 1:12;
yr = 9:13;
ext = '.ohh';
format = sprintf('%s%%03d%%02d%s\n', FN1, ext);
data = [yr; mn(1:numel(yr))];
text = sprintf(format, data(:))
fid = fopen('JDAraw.txt','w');
fprintf(fid, '%s', text)
fclose(fid)
3 Commenti
Thorsten
il 20 Ott 2015
If you want filenames for 12 month for each year, use
data = [reshape(repmat(yr, [12 1]), 1, []); ...
repmat(mn, 1, numel(yr))];
Più risposte (1)
Stalin Samuel
il 20 Ott 2015
clear
FN1 = 'JDA';
z = '0',
mn = 1:12;
yr = 9:13;
ext = '.ohh';
filename = fopen('JDAraw.txt','w');
for k = 1:numel(yr);
yr1 = yr(k);
if yr1==9
tmp = sprintf('%s%s%03d%02d%s',FN1,z,yr1,mn(k),ext)
fid = fopen(tmp,'rt');
end
tmp = sprintf('%s%03d%02d%s',FN1,yr1,mn(k),ext)
fid = fopen(tmp,'rt');
fprintf(filename, '%s\n',tmp);
end
0 Commenti
Vedere anche
Categorie
Scopri di più su Characters and Strings in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!