zET*_*ETO 4 c++ iostream stl visual-studio
我正在使用MS Visual Studio 2012编译器,我正在x64发布模式下构建.
使用ifstream我可以读取大于4GB的文件.问题是,我无法在10GB文件中找到一个位置.
当我像这样使用seekg is.seekg (5368709120, is.beg);然后is.tellg();返回-1,这意味着搜索失败.我确信文件存在且位置5368709120也存在.如果我使用它,它的工作完全正常:is.seekg (100, is.beg);例如.
使用多次搜索不是一种选择,因为文件可以达到300GB(并且使用许多搜索将会很慢).
我的问题是:如何在不使用多次搜索的情况下寻求在10GB文件上正常工作?