fopen打开2G以上的文件,是无法打开的,我估计是跟32Bit有关系,跟内存大小有关系。
网上说的一些方法:
(1)用fopen64
(2)#undef _FILE_OFFSET_BITS
#define _FILE_OFFSET_BITS 64
#include <unistd.h>
#include <dirent.h>
(3)在makefile编译选项里加上-D_FILE_OFFSET_BITS=64 -D_LARGE_FILE
(4)用ifstream
(5)Windows下用内存映射,ReadFileEx/WriteFileEx