how to change specific row for all file inside a folder?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
adhi dermawan
el 19 de Dic. de 2022
Comentada: adhi dermawan
el 20 de Dic. de 2022
Greeting sir, I have multiple text file inside a folder which has 18 rows in each file. I wanted to delete the last row of all file inside the folder. How can I do it?
1 comentario
Rik
el 19 de Dic. de 2022
What have you tried? Do you have a list of file names stored in a variable?
Respuesta aceptada
Jan
el 19 de Dic. de 2022
Editada: Jan
el 19 de Dic. de 2022
Two steps:
- Implement the code to process 1 file. The easies way is to import the file using readlines, remove the last line and to export it by writelines afterwards.
- Run the above code in a loop. See FAQ: How can I process a sequence of files?
If you have a large number of huge files, maybe this can help to improve the speed: FEX: FileResize . Then determine the start of the last line:
file = 'YourFile.txt';
[fid, msg] = fopen(file, 'r'); % Not in 't' mode!!!
assert(fid > 0, msg); % No FOPEN without checking for success!!!
s = '';
while ischar(s)
c = ftell(fid); % Get current position
s = fgets(fid); % Read next line
end
fclose(fid);
FileResize(file, c, 'set');
Of course: Create a backup of the data set before testing.
Más respuestas (0)
Ver también
Categorías
Más información sobre Get Started with MATLAB 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!