shuitumu 发表于 2006-12-15 12:14

请教关于输出文件的换行问题

大家好!
我用了下面一段命令:

x = 0:.1:1;
y = ;
fid = fopen('exp.txt','w');
fprintf(fid,'%6.2f %12.8f\n',y);
fclose(fid)

是希望输出:

0.00    1.00000000
0.10    1.10517092
...
1.00    2.71828183

但是实际在文本文件中查看到的不是分行的,而是连续的.换行符是用方块代替的.

请教各位这是什么原因,该如何解决?

谢谢!

stephenhope 发表于 2006-12-15 13:33

可能是文件里面字符的编码问题

你试试用ultraEditor打开看看

snowlion1111 发表于 2006-12-15 22:18

那就要看文件以前保存的是什么格式了,如果文件是象这种格式:
0.00    1.00000000
0.10    1.10517092
...
1.00    2.71828183
保存的,那么就能原样读出来.
你读出来的是连续的,那么只能说明该文件就是保存成连续的格式的.如果你能在文件中准确定位,也是能按你的要求读出的.

eight 发表于 2007-1-12 12:39



fid = fopen('exp.txt','w');



当你写程序的时候,你没有使用文本方式open文件,matlab就采用默认的二进制方式写入,当你用工具打开的时候,却使用记事本(文本方式),结果当然不是你希望要的。你可以使用写字板或者UltraEdit这些工具打开,能正确显示。不过最好的方法是编程的时候用以下语句代替:
fid = fopen('exp.txt','wt');

[ 本帖最后由 eight 于 2007-1-12 12:40 编辑 ]

XKXQXQXK 发表于 2009-5-4 18:11

学习了,谢谢
页: [1]
查看完整版本: 请教关于输出文件的换行问题