Copy a txt file and change a line by a other

3 visualizaciones (últimos 30 días)
Lila wagou
Lila wagou el 23 de Mzo. de 2016
Comentada: Walter Roberson el 24 de Mzo. de 2016
Dear I have a problem to copy from a txt file to another one, and change a specific line i have found the copy file option
file_A = 'Ok_A.txt';
file_B = 'Ok_B.txt';
copyfile(file_A,file_B)
But i cannot go further

Respuesta aceptada

Walter Roberson
Walter Roberson el 23 de Mzo. de 2016
copyfile() is not appropriate for this. You need to fopen() one file for input and the other for output, and then copy the input to the output until you get to the line that is to be changed. Output the changed version of the line rather than the original version of the line. Then continue copying input to output until the end of file. Then fclose() the two files.
There is no way to make a change in the "middle" of a text file -- not unless the new text is exactly the same size as the original text. This is not a restriction imposed by MATLAB: it is a restriction on all file systems that have been implemented by vendors over the last 30-ish years.
  4 comentarios
Lila wagou
Lila wagou el 24 de Mzo. de 2016
Dear Walter, thank you lot. Please, a small change in the 4 line
fid_out = fopen('OK_B.txt', 'w');
Thank
Walter Roberson
Walter Roberson el 24 de Mzo. de 2016
fid_in = fopen('Ok_A.txt', 'r');
fid_out = fopen('Ok_B.txt', 'w');
You can change the strings to whatever you need.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Characters and Strings en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by