fprintf and line break
Ältere Kommentare anzeigen
Hi,
I'm trying to write an array into a text file using fprintf. It's working fine on my Mac Matlab Version 2015b. However, on my work PC with a 2011 version, it is not breaking the line, but writing everything into one single line. Since I only have those two setups, it's hard for me to figure out if it is a Mac/PC or a version issue. Also, maybe I'm missing something in the syntax?
filetimenormal=fullfile(savepath,'file.txt');
ftnormal=fopen(filetimenormal, 'w');
header={'year','mm', 'dd', 'hh', 'min', 'sec', 'file', 'type'};
fprintf(ftnormal,'%s \t %s \t %s \t %s \t %s \t %s \t %s \t %s \n',header{1,:});
[nrows,ncols] = size(newtimearray);
for row = 1:nrows
fprintf(ftnormal,'%s \t %s \t %s \t %s \t %s \t %s \t %s \t %s \n' ,newtimearray{row,:});
end
Thank you!
3 Kommentare
Geoff Hayes
am 30 Aug. 2016
Anke - is this true for the header too? Is it on the same line as the data? Put a breakpoint at the second fprintf and check to see whether the newtimearray{row,:} data types make sense for the output format string.
Anke Kügler
am 30 Aug. 2016
Antworten (2)
Walter Roberson
am 30 Aug. 2016
For MS Windows, use
ftnormal=fopen(filetimenormal, 'wt');
instead of
ftnormal=fopen(filetimenormal, 'w');
Image Analyst
am 30 Aug. 2016
0 Stimmen
Depending on the program (notepad, wordpad, MSWord, etc.) the new lines are interpreted differently. If \n is not working, try \n\r or \r\n. One of those should work.
Kategorien
Mehr zu Characters and Strings finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!