how to change specific row for all file inside a folder?
3 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Jan
2022-12-19
编辑:Jan
2022-12-19
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.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!