雅乐网

计算机技术、学习成长

编程 » C/C++ » c语言文件处理文本文件和二进制文件的区别

c语言文件处理文本文件和二进制文件的区别

文本文件和二进制文件 本质上没有什么物理上区别,有的只是逻辑上的区别。因为计算机存储就是用的二进制。这两者只是在编码层次上有差异。

在windows系统中,C的文本方读写与二进制读写的差别仅仅体现在回车换行符的处理上.文本方式写时,每遇到一个”/n”(0AH换行符),它将其换成”/r /n”(0D0AH,回车换行),然后再写入文件;当文本读取时,它每遇到一个”/r/n”将其反变化为”/n”,然后送到读缓冲区.正因为文本方式有”/n”--”/r/n”之间的转换,其存在转换耗时.二进制读写时,其不存在任何转换,直接将写缓冲区中数据写入文件.

总地来说,从编程的角度来说,C中文本或二进制读写都是缓冲区与文件中二进制流的交互,只是文本读写时有回车换行的转换.所以当写缓冲区中无换行符 ”/n”(0AH),文本写与二进制写的结果是一样的,同理,当文件中不存在”/r/n”(0DH0AH)时,文本读与二进制读的结果一样.

c语言处理文件时,使用二进制打开可以避免不少的麻烦

如果文章对你有帮助,欢迎点赞或打赏(金额不限)。你的打赏将全部用于支付网站服务器费用和提高网站文章质量,谢谢支持。

版权声明:

本文由 原创,商业转载请联系作者获得授权。
非商业转载请注明作者 雅乐网 ,并附带本文链接:
https://www.yalewoo.com/bin_file_and_text_file.html

上一篇:

下一篇:

我要评论

验证码*: 4 + 5 =