MFC教程(11)-- MFC下的文件类
2010-03-25 20:35:02 来源:WEB开发网核心提示:UINT m_hFile该成员变量是public访问属性,保存::CreateFile返回的操作系统的文件句柄,MFC教程(11)-- MFC下的文件类(3),MFC重载了运算符号HFILE来返回m_hFile,这样在使用HFILE类型变量的地方可以使用CFile对象,一般地,成员函数被映射到对应的Win32函数,BO
UINT m_hFile
该成员变量是public访问属性,保存::CreateFile返回的操作系统的文件句柄。MFC重载了运算符号HFILE来返回m_hFile,这样在使用HFILE类型变量的地方可以使用CFile对象。
BOOL m_bCloseOnDelete;
CString m_strFileName;
这两个成员变量是protected访问属性。m_bCloseOnDelete用来指示是否在关闭文件时删除CFile对象;m_strFileName用来保存文件名。
CFile的成员函数
CFile的成员函数实现了对Win32文件操作函数的封装,完成以下动作:打开、创建、关闭文件,文件指针定位,文件的锁定与解锁,文件状态的读取和修改,等等。其中,用到了m_hFile文件句柄的一般是虚拟函数,和此无关的一般是静态成员函数。一般地,成员函数被映射到对应的Win32函数,如表11-1所示。
表11-1 CFile函数对Win32文件函数的封装
虚拟 | 静态 | 成员函数 | 对应的Win32函数 |
文件的创建、打开、关闭 | |||
√ | Abort | CloseHandle | |
√ | Duplicate | DuplicateHandle | |
√ | Open | CreateFile | |
√ | Close | CloseHandle | |
文件的读写 | |||
√ | Read | ReadFile | |
ReadHuge(向后兼容) | 调用Read成员函数 | ||
√ | Write | WriteFile | |
WriteHuage(向后兼容) | 调用Write成员函数 | ||
√ | Flush | FlushFileBuffers | |
文件定位 | |||
√ | Seek | SetFilePointer | |
SeekToBegin | 调用Seek成员函数 | ||
SeekToEnd | 调用Seek成员函数 | ||
√ | GetLength | 调用Seek成员函数 | |
√ | SetLength | SetEndOfFile | |
文件的锁定/解锁 | |||
√ | LockRange | LockFile | |
√ | UnlockRange | UnlockFile | |
文件状态操作函数 | |||
√ | GetPosition | SetFilePointer | |
GetStatus(CFileStatus&) | GetFileTime,GetFileSize等 | ||
√ | GetStatus(LPSTR lpszFileName CFileStatus&) | FindFirstFile | |
√ | GetFileName | 不是简单地映射到某个函数 | |
√ | GetFileTitle | ||
√ | GetFilePath | ||
√ | SetFilePath | ||
√ | SetStatus | ||
改名和删除 | |||
√ | Rename | MoveFile | |
√ | Remove | DeleteFile |
更多精彩
赞助商链接