Printing to text file

Pretty simple. I want to print this to a text file:
4
1
2
3
4
but instead I am getting this:
41234
Here's my code:
z = 4;
fid = fopen([mnl_data_path, 'packages.txt'], 'w');
a = num2str(z);
fprintf(fid,'%s\n',a);
for j = 1:1:z
a = num2str(j);
fprintf(fid,'%s\n',a);
end
fclose(fid);
Why isn't it printing to a new line?

Antworten (4)

the cyclist
the cyclist am 25 Aug. 2012

0 Stimmen

Strange. I get each digit on a separate line, as you intend.
I am using the prerelease of R2012b, on a Mac running OSX 10.6.8.
Edward Umpfenbach
Edward Umpfenbach am 26 Aug. 2012

0 Stimmen

Well I'm not sure what to do. It's definitely updating the file each time (if I change it to z = 5), I see "512345" printed to the text file.
2010a Windows 7
Edward Umpfenbach
Edward Umpfenbach am 26 Aug. 2012

0 Stimmen

Nevermind. When I open with notepad I see "41234". When I open with notepad++, I see
4 1 2 3 4
So I guess it is not Matlab, it is notepad.

2 Kommentare

per isakson
per isakson am 26 Aug. 2012
Did you try View | Show Symbol | Show All Characters in notepad++?
Image Analyst
Image Analyst am 27 Aug. 2012
Try wordpad. I think wordpad and notepad behave differently with regards to how they interpret \n and \r\n. You can know for sure what's there if you have access to an editor that can view in hex format.

Melden Sie sich an, um zu kommentieren.

Walter Roberson
Walter Roberson am 27 Aug. 2012

0 Stimmen

Open the file with 'wt' instead of 'w'

Kategorien

Mehr zu Characters and Strings finden Sie in Hilfe-Center und File Exchange

Tags

Gefragt:

am 25 Aug. 2012

Community Treasure Hunt

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

Start Hunting!

Translated by