Borrar filtros
Borrar filtros

Why strrep() is unable to replace the string of following code.

2 visualizaciones (últimos 30 días)
sachin k p
sachin k p el 4 de Sept. de 2018
Respondida: Walter Roberson el 4 de Sept. de 2018
I have copied the entire content of the file to X.
ff='Downloads\python.txt';
fid=fopen(ff,'rt');
X = fread(fid) ;
fclose(fid) ;
X = string(X.') ;
Y = strrep(X,'name','verify') ;
fid = fopen(ff,'r+') ;
fprintf(fid,'%s',Y);
fclose (fid) ;
  1 comentario
Geoff Hayes
Geoff Hayes el 4 de Sept. de 2018
sachin - have you confirmed that name appears in your X? Is python.txt a text file or a binary file? (maybe this doesn't matter).

Iniciar sesión para comentar.

Respuestas (1)

Walter Roberson
Walter Roberson el 4 de Sept. de 2018
fread() defaults to using 'uint8=>double' so the results would all be in the range 0 to 255 . string() of that is going to result in a string array in which each entry is "0" to "255", and each byte was a separate string entry -- so each one is going to be 1, 2, or 3 characters long. None of those are going to match the four character long string 'name' as none of them are going to be anything other than characters that represent digits.
Consider using fileread() instead of fopen/fread/fclose .

Categorías

Más información sobre Large Files and Big Data 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