problem when write first line to text file

1 Ansicht (letzte 30 Tage)
Yu Li
Yu Li am 6 Mär. 2017
Kommentiert: Yu Li am 6 Mär. 2017
hi: I met some problem when tried to write the first line to text file. below is what the base test file was.
I use the command:
fid = fopen('test.txt','r+')
fprintf(fid,'%s\n','abc');
fclose(fid)
but the result becomes like below:
the first number is deleted.but I could not find why.
could anyone give me some suggestions?
thanks! Li
  1 Kommentar
KSSV
KSSV am 6 Mär. 2017
I think you cannot write in first line. Better read the content and write to a new text file with first line of your choice.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Jan
Jan am 6 Mär. 2017
You cannot insert characters in a text file. Trying this will overwrite the existing characters. Therefore you have to read the complete file at first, add the string in the memory and write the complete file afterwards:
Str = fileread('test.txt');
fid = fopen('text.txt', 'w');
if fid == -1
error('Cannot open file for writing.');
end
fprintf(fid,'%s\n','abc');
fprintf(fid, '%s', Str); % Or faster: fwrite(fid, Str, 'char');
fclose(fid);
  1 Kommentar
Yu Li
Yu Li am 6 Mär. 2017
thanks for your answer, my problem was solved!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

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

Community Treasure Hunt

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

Start Hunting!

Translated by