C++中的二进制和 TXT 模式有什么区别

what is the difference between binary and txt modes in C++

本文关键字:模式 什么 区别 TXT 二进制 C++      更新时间:2023-10-16

我最近开始使用C++,这似乎是一个侄女问题,但我找不到答案。创建 fstream 对象时,我有两个模式选项,二进制和 txt。fstream f ("file.txt",ios::out|ios::binary);和fstream f ("file.txt,ios::out|ios::binary);使用重载运算符 <<时,两者都写入相同的字符串。我的问题 两种模式之间的区别是什么,它是否会影响用于将字符写入流的字节数,因此当您读取每个 fstream 写入的数据时,您将需要一个不同的 seekg?

某些特殊字符可能会根据您使用的模式而更改。此外,这些特殊字符的更改可能取决于运行代码的操作系统或计算机系统。

使用二进制文件,您可以确保文件将按原样在任何计算机上读取,无论文件的内容如何。IO文件类型的差异说明了一切:文本模式适用于基于文本的文件,二进制适用于所有其他类型的 IO(如果您不希望发生任何解释,甚至是文本文件!