关于CFile.WriteString一点小问题

        在建立CStdioFile类,使用CFile.WriteString进行文本的文件的写入String的时候,出现一个小问题,就是CFile.WriteString(STR)是不自动添加换行符的,在后面使用CFile.WriteString("\r\n")添加换行符结果打开文件发现文本文件中写入的数据是进行了换行,但是只要进行修改,所有的换行就不见了。

解:

      CFile类操作文件默认的是Binary模式,CStdioFile类操作文件默认的是Text模式。
在Binary模式下我们必须输入'\r\n',才能起到回车换行的效果,'\r'只是回车(回到当前行的第一列),'\n'只是换行(到达下一行的当前列)。
而在Text模式下'\r'的工作是自动完成的,当我们写一个'\n'的时候,系统会自动帮我们在其前面加上一个'\r',然后保存到文件里。

      所以在CFile类进行添加换行的时候必须使用"\r\n",而在使用CStdioFile时只需要用"\n"进行换行就行了。



你可能感兴趣的:(MFC,花海拾贝)