文件的打开方式[转]
- 参考:http://c.biancheng.net/view/311.html
- 在 UNIX/Linux 平台中,用文本方式或二进制方式打开文件没有任何区别。
- 在 UNIX/Linux 平台中,文本文件以
\n
(ASCII 码为 0x0a)作为换行符号;而在 Windows 平台中,文本文件以连在一起的\r\n
(\r
的 ASCII 码是 0x0d)作为换行符号。- 在 Windows 平台中,如果以文本方式打开文件,当读取文件时,系统会将文件中所有的
\r\n
转换成一个字符\n
,如果文件中有连续的两个字节是 0x0d0a,则系统会丢弃前面的 0x0d 这个字节,只读入 0x0a。当写入文件时,系统会将\n
转换成\r\n
写入。- 也就是说,如果要写入的内容中有字节为 0x0a,则在写人该字节前,系统会自动先写入一个 0x0d。因此,如果用文本方式打开二进制文件进行读写,读写的内容就可能和文件的内容有出入。
- 因此,用二进制方式打开文件总是最保险的。
- https://www.cnblogs.com/zhengfa-af/p/8145443.html