fprintf of cell array
1 回表示 (過去 30 日間)
古いコメントを表示
I am trying to generate text files from the following example:
clear all
Year = {'2007','2008','2009'};
for i = 1:length(Year)
StartDate{i} = [Year{i} '-01-01 00:00'];
EndDate{i} = [Year{i} '-12-31 23:57'];
Resolution = 60;
DateT{i} = datestr(datenum(StartDate{i},'yyyy-mm-dd HH:MM'):Resolution/(60*24):...
datenum(EndDate{i},'yyyy-mm-dd HH:MM'),'yyyy-mm-dd HH:MM');
DateTime{i} = cellstr(DateT{i});
end
%save as text file
for i = 1:length(Year);
mkdir(fullfile('C:',Year{i}));
filename{i} = fullfile('C:',Year{i},'DateTime.txt');
fid{i} = fopen(filename{i},'w+');
for ii = 1:length(DateTime);
a{i} = 1:length(DateTime{i});
for k = 1:a{i};
fprintf(fid{i},'%s',DateTime{i}{k});
end
end
end
fclose 'all';
I know that the error must be in the line containing fprintf but I dont know how to fix it. How is it possible to write the each cell of DateTime into separate text files as indicated in the script?
1 件のコメント
Mohammed Ibrahim
2016 年 11 月 10 日
I had similar problem, I used strcat after cellstr. so in this question this may work: DateTime{i} = strcat(cellstr(DateT{i}));
採用された回答
Image Analyst
2012 年 3 月 31 日
Replace the corresponding lines with these:
a{i} = length(DateTime{i})
for k = 1:a{i}
fprintf(fid{i},'%s\n',DateTime{i}{k});
% fprintf(1,'%s\n',DateTime{i}{k});
end
The problem was the 1: in the "a{i}" line, and no \n in the fprintf().
3 件のコメント
Image Analyst
2012 年 3 月 31 日
If you mean why it doesn't look the same when you fprintf to the file instead of the command window, it's because if you go to a file you need to use \r\n instead of just \n. I'm not really sure why that is the convention, it just is.
Jan
2016 年 11 月 10 日
Using \r\n is not a convention, but text files can have either "\n" or "\r\n" or even "\r" as line breaks. Only the Windows Editor cannot display the different line breaks correctly, but e.g. Matlab's editor or any other one I've seen handles the different styles correctly. Therefore the convention should be not to use the Editor shipped with Windows.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Environment and Settings についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!