1.用CrrateFile函数进行文件的打开和创建
HANDLE CreateFile(
LPCTSTR lpFileName, //指向文件名的指针
DWORD dwDesiredAccess, //访问模式(写/读)
DWORD dwShareMode, //共享模式
LPSECURITY_ATTRIBUTES lpSecurityAttributes, //指向安全属性的指针
DWORD dwCreationDisposition, //如何创建
DWORD dwFlagsAndAttributes, //文件属性
HANDLE hTemplateFile //用于复制文件句柄
);
2.用SetFilePointer函数来对文件进行读写定位
DWORD SetFilePointer(
HANDLE hFile, // 文件的句柄
LONG lDistanceToMove, // 字节偏移量
PLONG lpDistanceToMoveHigh,//指定一个长整数变量,其中包含了要使用的一个高双字偏移(一
//般用来操作大型文件)。可设为零,表示只使用lDistanceToMove
DWORD dwMoveMethod // 文件定位的方式
);
3.用ReadFile进行文件的读操作
BOOL ReadFile(
HANDLE hFile, //文件的句柄
LPVOID lpBuffer, // 接受读取数据的一个数据缓冲区
DWORD nNumberOfBytesToRead, // 要读取的字节数量
LPDWORD lpNumberOfBytesRead, // 实际读取的字节数量
LPOVERLAPPED lpOverlapped // OVERLAPPED,倘若在指向FILE_FLAG_OVERLAPPED的前提下打开
); //文件,这个参数就必须引用一个特殊的结构。该结构定义了一次
//异步写操作。否则,改参数应置为NULL
4.用WriteFile函数进行文件的写操作
BOOL WriteFile(
HANDLE hFile, // 文件的句柄
LPCVOID lpBuffer, // 要写入的一个数据缓冲区
DWORD nNumberOfBytesToWrite, // 要写入数据的字节数量。如写入0字节,表示什么都不写入,
//但会更新文件的"上一次修改时间"。
LPDWORD lpNumberOfBytesWritten, // 实际写入文件的字节数量
LPOVERLAPPED lpOverlapped // OVERLAPPED,倘若在指向FILE_FLAG_OVERLAPPED的前提下打开
); //文件,这个参数就必须引用一个特殊的结构。该结构定义了一次
//异步写操作。否则,改参数应置为NULL