c++读取几个G的大文本问题

我通常都是用c++的ifstream打开文件流的,处理MB级大小的文本都可以读取,为什么我现在想以二进制的方式读取几GB的内容就不行了呢??求大神帮忙!!

c++

3个回答

用windows的api函数,内存映射,逐块读取写入

 CreateFile :打开文件

GetFileSize : 获取文件尺寸

CreateFileMapping :创建映射

MapViewOfFile :映射文件
ttyy2018717
ttyy2018717 谢谢!!但是用内存映射的话是不是要涉及到分配粒度问题啊??
接近 4 年之前 回复

用内存映射文件方式读取,CreateFileMapping

ttyy2018717
ttyy2018717 嗯嗯 谢谢!
接近 4 年之前 回复

用windows的api函数,内存映射,逐块读取写入

CreateFile :打开文件

GetFileSize : 获取文件尺寸

CreateFileMapping :创建映射

MapViewOfFile :映射文件

SuperFeio
LUBILanna
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!