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 '\nDate of creation:' datestr(now,'dd/mm/yyyy')];
fprintf(fid,'%s',txt);
end
生成的文件不是插入换行符,而是:
C:\w2\test1.txt : 9900\nDate of creation:30/05/2012
我的代码存在哪些问题?
答案 0 :(得分:5)
使用sprintf
制作这些字符串:
fprintf(fid, sprintf('%s : %s\nDate of creation: %s', txt_fname, student_id, datestr(now,'dd/mm/yyyy')));
现在你正在这样做,它将反斜杠视为文字。
答案 1 :(得分:0)
转换' \ n'在将其插入字符串之前加倍:
fid = fopen('my_file.txt', 'w');
fwrite(fid, ['First line' double(sprintf('\n')) 'Second line'])
fclose(fid);
感谢Adobe Research的研究科学家Franck Dernoncourt。