Effacer les filtres
Effacer les filtres

how to write in the text file?

3 vues (au cours des 30 derniers jours)
Lilya
Lilya le 20 Oct 2015
Commenté : Lilya le 20 Oct 2015
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.

Réponse acceptée

Thorsten
Thorsten le 20 Oct 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 commentaires
Thorsten
Thorsten le 20 Oct 2015
If you want filenames for 12 month for each year, use
data = [reshape(repmat(yr, [12 1]), 1, []); ...
repmat(mn, 1, numel(yr))];
Lilya
Lilya le 20 Oct 2015
OMG! Thank you like huge universe

Connectez-vous pour commenter.

Plus de réponses (1)

Stalin Samuel
Stalin Samuel le 20 Oct 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

Community Treasure Hunt

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

Start Hunting!

Translated by