如何一次将超过4GB的文件加载到内存缓冲区中(=使用单个WinAPI调用)? WinAPI ReadFile
方法最多只支持4294967295个字节。
注意:只是为了在网络搜索中偶然发现这个问题的人说清楚:这通常是一个非常糟糕的主意。我们已经考虑过一个非常特殊的场景,但没有采用它。我们仍然感兴趣,在理论层面上,如果它是可能的以及如何。
单击一次Win32 API函数就无法做到这一点。多次调用ReadFile
,读取大小不超过4GB的块,直到读完所有需要读取的内容为止。
如果它有助于您进行单个函数调用,请将此循环包装在您定义的函数中,并调用它。