我尝试写入一个大文件,但它似乎不适用于大于 2GB 的文件。
我尝试过使用 boost::iostreams::file_sink。这只是升压流的限制吗?还有其他方法可以在 Win64 和 win32 上写入大文件吗?
这取决于:
- 您正在使用的文件系统。 FAT 等旧文件系统仅允许最大 2GB 的文件。使用 NTFS。
- 您的库必须编译为允许大文件(64 位查找偏移)。如果他们使用 32 位整数在文件中查找(检查调用“seek”和“tell”的参数和结果),您只能访问 2GB(2^31 位,第 32 位是符号 +/-)
这也可能有帮助:http://www.boost.org/doc/libs/1_37_0/libs/iostreams/doc/faq.html#offsets http://www.boost.org/doc/libs/1_37_0/libs/iostreams/doc/faq.html#offsets
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)