我该如何阅读大型二进制文件

Sea*_*iss 3 c++ windows binary

我有一个大的二进制文件(超过500mb),我想读取一部分并从中提取数据.我确定我不应该将整个文件一次性加载到内存中,那么如何使用十六进制偏移加载其中的一部分呢?

我以前从未使用过这种东西,所以我不知道从哪里开始.我想要读取和写入文件的所有内容都是文本.

Otá*_*cio 6

使用内存映射文件.这将允许您处理文件,就像它在内存中一样,但它一次只能被加载到内存页面中.

  • 可能还想为posix操作系统链接[``mmap``](http://linux.die.net/man/2/mmap),但这个想法恰到好处:) (3认同)