我知道如何在其他用户询问的文件开头插入一行文本,但我需要在 8 行之后在文件中插入一行。
dlmwrite('extract_f.txt',['first line' 13 10 fileread('extract_f2.txt')],'delimiter','');
我知道如何在其他用户询问的文件开头插入一行文本,但我需要在 8 行之后在文件中插入一行。
dlmwrite('extract_f.txt',['first line' 13 10 fileread('extract_f2.txt')],'delimiter','');
您可以使用fgetl
来阅读和跳过行。以下将尊重第 8 行之前的现有内容,并通过插入换行符来增加行索引,以在行数小于该行数时到达第 8 行:
fid = fopen('file.txt', 'r+t');
nLines = 8; l = 0;
while l < nLines
l = l + 1;
s = fgetl(fid); % read line
if ~ischar(s)||isempty(s)
fprintf(fid, '\n'); % skip empty lines and last
end
end
fprintf(fid, 'this is line %i', nLines);
fclose(fid);