Writing ASCII symbols by using fprintf

11 visualizzazioni (ultimi 30 giorni)
ONK
ONK il 14 Ago 2018
Riaperto: Stephen23 il 16 Ago 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 Commenti
Stephen23
Stephen23 il 14 Ago 2018
Modificato: Stephen23 il 14 Ago 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 il 15 Ago 2018
Modificato: ONK il 15 Ago 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).

Accedi per commentare.

Risposta accettata

Stephen23
Stephen23 il 14 Ago 2018
Modificato: Stephen23 il 14 Ago 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 Commenti
ONK
ONK il 14 Ago 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 il 14 Ago 2018
Modificato: Stephen23 il 14 Ago 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.

Accedi per commentare.

Più risposte (0)

Prodotti


Release

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by