How to combine sprintf and fprintf

3 visualizzazioni (ultimi 30 giorni)
TheBeginner
TheBeginner il 9 Gen 2013
Hello everyone,
Here's what I want to do :
-I use fprintf to print a sentence with new lines inside, for example:
text=sprintf('%s \n %s',sentence1,sentence2);
-Then I want to save it in a .txt file with this :
file=fopen(sprintf('%s%s%s',filepath,filename,'.txt'),'w');
fprintf(file,'%s',text);
It displays what I wrote except the new line : I have in my file sentence1sentence2
Any idea on how to fix this problem?
Thank you!
  1 Commento
Jan
Jan il 9 Gen 2013
Modificato: Jan il 9 Gen 2013
A more stable method to create the file name due to the consideration of file separators:
fopen(fullfile(filepath, [filename, '.txt']))

Accedi per commentare.

Risposte (1)

Jan
Jan il 9 Gen 2013
Modificato: Jan il 9 Gen 2013
How do you test if there is no newline? You write the file in binary mode, such that CHAR(10) is used as line break. All editors I know can handle this correctly, but not the standard "Editor" of Windows. So please open the file in WordPad or Matlab's editor also.
I leave it up to others to mention the 'wt' method for fopen, because I usually warn for the eventually unexpected side-effects.
  1 Commento
TheBeginner
TheBeginner il 9 Gen 2013
Ok, when I open it with WordPad I have the new line!
But I don't really understand why the editor of Windows canno't recognize that there's a new line.
Thank you!

Accedi per commentare.

Categorie

Scopri di più su Environment and Settings 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!

Translated by