📄 12.5 mfc对文件操作的支持.txt
字号:
12.5 MFC对文件操作的支持
MFC中提供的支持文件操作的基类是 : CFile,该类提供了没有缓存的二进制格式的磁盘文件输入输
出功能,通过其派生类能够间接地支持文本文件和内存文件。该类有三种形式的构造函数,其中一
种声明形式如下所示 :
CFile( LPCTSTR lpszFileName , UINT nOpenFlags );
可以看到,这种构造形式有两个参数,其中参数 lpszFileName指定文件的名称, nOpenFlags参数
指定文件共享和访问的方式,可以指定如表 12.11所示值之一或多个值的组合。
表 12.11 nOpenFlags参毅取值
取值 说明
CFile::modeCreate 指不构造函数创建一个新文件 .如果该文件已经存在,那么将它的长度截断为
0
CFile::modeNoTruncate 与 CFile::modeCreate组合使用 .如果正创建的文件已经存在,那么它的
氏度将不会被截断为 0
CFile::modeRead 打开文件.该文件仅用于读取操作
CFile::modeReadWrite 打开文件,该文件可读可写
CFile::modeWrite 打开文件,该文件仅用于写入操作
续表
取值 说明
CFile::m创eNolI由自it 禁止子进程继承该文件
CFile::shareDenyNone 打开文件,同时并不拒绝其他进程对该文件的读取或写入访问。如果该文
件已经被其他进 程以兼容模式打开,那么文件创建失败
CFile::shareDenyR臼A 打开文件,并且拒绝其他进程对该文件的读取访问。如果该文件已经被其他
进程以兼容模 式,或者为读取访问打开,那么文件创建失败
CFile::shareDenyWrite 打开文件,并且拒绝其他进程对该文件的写入访问。如果该文件已经被其
他进程以兼容模 式,或者为写入访问打开,那么文件创建失败
CFiIe::shareExclusive 以排它独占模式打开文件,拒绝其他进程对该文件的读取和写入访问。如
果该文件已经以 任何其他模式为读取或写入访问而打开,即使是由当前进程打开的,构造函数失败
CFiIe::shareCompat 此标志在 32位阳℃中不可用。当在 CFile: :Open函数中使用时,此标记将
映射为 CFile::shareExclusive
CFiIe::typeText 设置文本模式,带有一对回车换行字符(仅在 CFiIe类的派生类中使用)
CFiIe::typeBinary 设置二进制模式(仅在 CFiIe类的派生类中使用〉
CFile类提供了很多非常有用的方法,例如,写入数据可以调用 Write方法,读取数据可以使用 Read
方法。同时,该类也提供了移动文件指针的方法,其中 Seek方法可以将文件指针移动到指定的位置;
SeekToBegin方法将把文件指针放置到文件的开始位置 E SeekToEnd方法将把文件指针放置到文件
的结尾处。另外,还可以通过 CFile类的 GetLen供方法获得文件的长度。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -