6
我正在C++中使用ifstream实现一个程序,它必须在大文件(〜1TB)中寻找。但是,阅读2GB后,这失败了。有没有办法获得档案职位,即使是大型档案?我编译了一个32位的Windows机器。用ifstream在大文件中寻找
std::ifstream f;
f.open(filename.c_str(), std::ifstream::in | std::ifstream::binary);
while(true) {
std::cout << (uint64_t)(f.tellg()) << std::endl;
//read data
}
我不知道如果这实际上改变什么,但是你有没有尝试过使用简单的C选择阅读文件? – stefan 2012-07-12 09:44:03
@stefan有普通的C文件位置处理程序,其大小大于32位? – triclosan 2012-07-12 11:01:20
正如我所说@triclosan:我不知道,这只是一个想法 – stefan 2012-07-12 11:20:20