數據我有以下功能:Matlab的:打印在特定的行
function [] = Write(iteration)
status=close('all');
nomrep=num2str(iteration);
fid=fopen('ID.dat','a');
frewind(fid);
for l=1:iteration
line=fgetl(fid);
end
fprintf(fid,[nomrep,' \n']);
status=fclose(fid);
end
我希望Write(15)
在15日線的begining連續行創建ID.dat並打印2和15。
但是將這些值始終打印在文件的開頭。
即使我單獨嘗試了fgetl(fid)
,並且也替換爲循環,while循環仍然無效。
是不是因爲我應該在那之前用一些虛擬空間來填充行?沿邊這,我執行
for i=1:5 Write(i); end
這應該打印1至5中的每一行,但即使這是行不通的。
網上我發現了另一種方式,即使不工作 '函數[] =寫2(迭代)' '狀態=關閉( '所有'); nomrep = num2str(iteration); fid = fopen('ID.dat','w'); tline = fgets(fid); for l = 1:iteration tline = fgets(fid); 結束 fprintf(fid,[nomrep,'\ n']); status = fclose(fid); 結束 ' – Soyol