用 ifstream如下方式读取 文件
ifstream fin;
fin.open(“xxx”);
if(!fin.is_open())
{
…..
}
string line;
while(!fin.eof())
{
getline(fin,line);
….
}
以这样的方式读取文件,打开文件后,是将整个文件全部映射到内存,还是逐行读到内存?
ps:假如文件非常大,内存不足以一次性读取整个文件,怎么样读文件?
ifstream fin;
fin.open(“xxx”);
if(!fin.is_open())
{
…..
}
string line;
while(!fin.eof())
{
getline(fin,line);
….
}
以这样的方式读取文件,打开文件后,是将整个文件全部映射到内存,还是逐行读到内存?
ps:假如文件非常大,内存不足以一次性读取整个文件,怎么样读文件?
解决方案
20
没有映射到内存,假如要使用内存映射方式,使用API CreateFileMapping
5
应该是读一次写入内存一次,假如文件很大,那就分部分处理吧,只能这样做了
5
应该是逐行写入的,