Writing ASCII symbols by using fprintf

11 Ansichten (letzte 30 Tage)
ONK
ONK am 14 Aug. 2018
Erneut geöffnet: Stephen23 am 16 Aug. 2018
Hello, Everybody, I will be grateful if you can help me... I have opened a .dat file with fopen and write on it by fprintf to write some numbers. At the end of each line i should put ASCII No13(CR)+No10(LF) and at the end of the file, i should write ASCII No26(EOF). these are the criterion of the program who will read this file and are mandatory. As this file is almost 100000 line i should write this file automatically with MATLAB. How i can put ASCII No13(CR)+No10(LF) automatically at the end of each line and the same on for ASCII No26(EOF)at the end of file by using frprintf?
  2 Kommentare
Stephen23
Stephen23 am 14 Aug. 2018
Bearbeitet: Stephen23 am 14 Aug. 2018
"ASCII No26(EOF)."
ASCII does not have an "End Of File" character. Did you mean:
  • The 26th character is "End of Medium", abbreviated EM, and has decimal value 25, hex value 19.
  • the 27th character is "Substitute", abbreviated SUB, and has decimal value 26, hex value 1A.
Which of these do you need?
ONK
ONK am 15 Aug. 2018
Bearbeitet: ONK am 15 Aug. 2018
Dear Stephene Thanks for your reply.i will go to try your guidence. In any way thank you so much. I am in contact with you and sure accept your answer(sorry i left my office yesterday).

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Stephen23
Stephen23 am 14 Aug. 2018
Bearbeitet: Stephen23 am 14 Aug. 2018
Windows only:
[fid,msg] = fopen('file.txt','wt'); % open in text mode!
assert(fid>=3,msg)
fprintf(fid,'...\n',yourArray.'); \n auto converted to \r\n.
fprintf(fid,'\x19') % add char(25), ASCII "End of Medium".
fclose(fid);
All OS's, including Windows:
[fid,msg] = fopen('file.txt','w'); % open in binary mode!
assert(fid>=3,msg)
fprintf(fid,'...\r\n',yourArray.'); % explicit \r\n.
fprintf(fid,'\x19') % add char(25), ASCII "End of Medium".
fclose(fid);
Notes:
  • For Windows OS in text mode, |
  5 Kommentare
ONK
ONK am 14 Aug. 2018
One question, how do you produce two previous images that show CR LF and EM characters? which editor are you using that shows this characters?
Stephen23
Stephen23 am 14 Aug. 2018
Bearbeitet: Stephen23 am 14 Aug. 2018
@ONK: I already told you that in my earlier comment, where I wrote this (including a link!):
"Here it is viewed in Notepad++"
If my answer helped you to resolve your original question, then please remember to accept it. Accepting answers is an easy way to show your thanks to the volunteers who help you on this forum.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte


Version

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by