我正在编写一个Matlab函数,它执行一些文件操作,如下所示。我取输入文件,逐行读取并将其写入输出文件。如果该行包含关键字,我会在写入输出之前进行进一步处理。我的问题是:如果输入行包含转义字符,它会混淆我用来写输出的fprintf。例如,如果输入行包含%符号,则该行的其余部分不会显示在输出中。所以,我的问题是:有没有办法强制fprintf忽略所有转义序列并打印文字字符串?在此先感谢您的帮助。
以下示例代码:
fptr_read = fopen('read_file.txt','r'); fptr_write = fopen('write_file.txt','w');
while(~feof(fptr_read))
current_line = fgetl(fptr_read);
fprintf(fptr_write,current_line);
end
如果current_line看起来'增益大5%',它将被写为'增益为5'。我希望逐行复制该行,而无需手动检查是否存在转义字符。
答案 0 :(得分:2)
我曾经遇到过类似的问题,并解决了这个问题:
fprintf(fp,'%s',stringWithEscapesIWant)