在matlab中将新行写入文本文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在matlab中将新行写入文本文件相关的知识,希望对你有一定的参考价值。

function [org_data] = file_manipulation(in_fname, txt_fname, mat_fname)
    org_data = round(load(in_fname));

    fid = fopen(txt_fname,'wt+');
    student_id = '9900';
    txt = [txt_fname ' : ' student_id '
Date of creation:' datestr(now,'dd/mm/yyyy')]; 
    fprintf(fid,'%s',txt);

end

生成的文件不是插入换行符,而是:

C:w2	est1.txt : 9900
Date of creation:30/05/2012

我的代码有什么问题?

答案

使用sprintf制作这些字符串:

fprintf(fid, sprintf('%s : %s
Date of creation: %s', txt_fname, student_id, datestr(now,'dd/mm/yyyy')));

你现在这样做的方式,它将反斜杠视为文字。

另一答案

在将' n'插入字符串之前将' n'转换为double:

fid = fopen('my_file.txt', 'w');
fwrite(fid, ['First line' double(sprintf('
')) 'Second line'])
fclose(fid);

感谢Adobe Research的研究科学家Franck Dernoncourt。

以上是关于在matlab中将新行写入文本文件的主要内容,如果未能解决你的问题,请参考以下文章

如何将文本输入写入文件中的换行符?

如何在bash中将空格替换为新行[重复]

如何在Matlab中将数据从一个文本文件复制到另一个文本文件

MATLAB。写入文本文件或创建它,如果它不存在。将图形保存在目录中,如果不存在则创建它

在 MATLAB 中将输出图形保存为 png 文件

如何在java中将字符串保存在文件中[重复]