一、目的
用传统的IO读写大文件,所花时间很长,这往往是程序设计时的瓶颈。使用文件内存映射的方法,将数据分块读入内存,再进行处理。这可以很高效的解决c++读写大文件的问题。
二、相关命令介绍
1、 创建文件(CreateFile),如下:
HANDLE CreateFile(
LPCTSTR lpFileName,
DWORD dwDesiredAccess,
DWORD dwShareMode,
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
DWORD dwCreationDisposition,
DWORD dwFlagsAndAttributes,
HANDLE hTemplateFile
);
参数解析:
lpFileName:需要创建或者打开的文件名字 dwDesiredAccess:文件的打开方式,GENERIC_READ(只读), GENERIC_WRITE(只写), GENERIC_READ | GENERIC_WRITE(读写) dwShareMode:文件的共享方式,如:FILE_SHARE_DELETE, FILE_SHARE_READ, FILE_SHARE_WRITE lpSecurityAttributes:文件的安全属性,通常为空 dwCreationDisposition:文件的访问方式,如:CREATE_ALWAYS, CREATE_NEW, OPEN_ALWAYS, OPEN_EXISTING, or TRUN |