xinyuxf 发表于 2007-3-27 16:54

关于向txt文件中输入数据时的换行(共享一下小经验)

最近编程,用matlab向txt文件中输入数据。数据输入过程中,需要进行换行,我按书上的介绍(matlab的help里也是这样解释),使用'\n'来实现。结果换行没成功,还在数据之间出现了很多黑方块。百思不得其解。问师兄师姐,都说遇到过,但没找到结果。
   无奈之时,想到了google(其实早该想到了),一搜,结果就出来了。
   网页中这样解释:

      换行和回车是不同的,而且在不同的操作系统,解释也不相同。
      \n一般会操作系统被翻译成"行的结束",即LF(Line-Feed)
      \r会被翻译成"回车",即CR(Cariage-Return)
      对于文本文件的新行,在UNIX上,一般用\n(LF)来表示,Mac上用\r(CR)来表示,
      Windows上是用\n\r(CR-LF)来表示。      
       所以在matlab中使用\n来写回车,在windows上打开会出现小方块。如果想 避免这种情况,打开文件时使用t参数:
      
            fid = fopen('myfile.dat','wt');

      看完忽有茅舍顿开的感觉,呵呵,全当是小技巧,和广大新手们共享一下。

eight 发表于 2007-3-27 17:10

原帖由 xinyuxf 于 2007-3-27 16:54 发表
最近编程,用matlab向txt文件中输入数据。数据输入过程中,需要进行换行,我按书上的介绍(matlab的help里也是这样解释),使用'\n'来实现。结果换行没成功,还在数据之间出现了很多黑方块。百思不得其解。问师兄 ...


这正是二进制文件和文本文件之间的区别,迟点没有这么忙了,我也打算写写关于使用matlab读取文件的一些心得


对上贴的特别说明:一时按错了,多评了1个威望,也就算了,不减了:loveliness: ,本来应该在上贴说明的,可是院长的帖子我无权编辑,只能写在这里

[ 本帖最后由 eight 于 2007-3-27 17:13 编辑 ]
页: [1]
查看完整版本: 关于向txt文件中输入数据时的换行(共享一下小经验)