Matlab fprintf 函数不创建新行

Matlab fprintf 函数不创建新行

我尝试使用以下命令从文件中删除一些行。

fData = textread('s0001_rem.hea', '%s','delimiter','\n','whitespace', '');
fData ([20 19 18])=[];
fid=fopen('s0001_rem.hea', 'w');
for i=1:length(fData)
   fprintf(fid,'%s', '\n', fData {i});
end
fid=fclose(fid);

但是运行此命令后,我打开文件进行检查,发现它不再显示换行符。它会在一行中显示所有信息,并且不会显示换行符,而是显示\n

我是 Matlab 新手,所以我不知道如何解决这个问题。在网上查遍了所有地方,但都没有找到。请帮帮我。我在 MacOS 上使用 Matlab R2014b。

笔记

.hea 文件是一种包含一些信息的 .txt 文件。它的工作方式与文本文件完全相同。

答案1

它不显示换行符,而是显示\n

fprintf(fid,'%s', '\n', fData {i});

尝试将其放在\n第一个参数里面,如下所示:

fprintf(fid,'%s\n', fData {i});

相关内容