在不同操作系统下处理C中的文件

时间:2012-02-11 19:46:22

标签: c file text operating-system format

我正在处理C中的文件。它们是非常非常庞大的文件。 我读写这些文件(它们只是格式化的文本文件)。 我不给他们任何延伸; 我只是说fopen("filename","r")

现在文件的内容类似于

1 line1 100
2 line2 200
.
.
20000 line 20000 14567

问题是我在Mac OS中执行它(特别是Leopard)当我在另一个o / s(特别是Windows)中打开相同的文件(没有扩展名)时,程序无法读取内容文件。 我想这是因为文件的格式不同。

任何与其他o / s不冲突的标准文件格式或扩展名的解决方案?

1 个答案:

答案 0 :(得分:4)

如果您正在使用纯文本文件,请记住,在Unix和类Unix操作系统中,行以\n结尾,在Windows中以\r\n结尾。

如果在操作系统之间以纯文本形式进行文件传输,则客户端可能会将行结束更改为与目标操作系统兼容。您可以将传输设置为二进制,以便获得原始文件的精确字节表示。