假设您有一个C ++程序生成要保存在磁盘上的数据。您将其保存在Windows Vista文件系统上。您可以直接在具有不同文件系统的其他操作系统上使用它(例如Mac OSX)吗?
答案 0 :(得分:0)
是肯定的。如果你可以把它放到另一个系统上,或者可以从一个系统看到另一个系统。
文件系统不应该更改文件内容。
答案 1 :(得分:0)
我想到的唯一潜在问题是行尾标记的不同格式:\ n在UNIX下,\ n \ n \ r \ n在Windows下。我不确定Mac OSX使用什么(作为Unix系统它应该使用\ n,但如果我没记错的话,旧的Mac OS使用\ r)。当然,在格式之间编写转换器很容易。
答案 2 :(得分:0)
这取决于。二进制数据在所有主流操作系统上都是相同的(其中一个字节是8位;嵌入式系统不一定如此)。
由于换行符约定(Windows使用\r\n
表示换行符,类Unix系统\n
)和字符编码,因此以文本模式编写的文件可能无法在所有平台上“正常工作”的问题。
答案 3 :(得分:0)
当然,您可以,因为您的操作系统具有读取两个文件系统的驱动程序。
fopen
或同等的调用是完全抽象的,因此您不必担心它来自哪里。数据将以相同的方式读取。