How can I skip some lines in a text file in order to reach a specific one which is in an undefined position?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
while message1 ~= message(1:size(message1,1),1:size(message1,2))
message1=fgetl(file_read); % move to the next cluster
i=i+1;
if message1 == -1
message = message1;
flag=0;
end
end
Hello everybody, I have this code line and my aim is to move the cursor down my text file unitl reaching the line stored in the variable "message". Previously on the code I had:
frewind(file_read);
for i=1:19;
message=fgetl(file_read);
end
Which worked fine because I knew the exact number of lines, but now I'm not able to move forward because, iteratively, matlab read always the same line (message1 remains the same).
How can I solve it?
0 comentarios
Respuestas (1)
David Fink
el 28 de Sept. de 2017
Use 'fgetl' and 'isequal' to check each line against the specific one.
Consider the following text file 'find.txt', and the desired line is 'THIS TEXT':
not the
text
THIS TEXT
more text
Then the following MATLAB code will move the file cursor to the beginning of the line after 'THIS TEXT'.
>> f = fopen('find.txt');
>> message = '';
>> while ~isequal(message,'THIS TEXT')
>> message = fgetl(f);
>> end
0 comentarios
Ver también
Categorías
Más información sobre File Operations en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!