⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 untitled-01.txt

📁 mfc 教程
💻 TXT
字号:
        第     6    $文件     1/ 0和串行化
    文件输人和输出(1/0)服务是所有操作系统的主要工作。不必惊奇,mcros」悄ndows
提供了各种API函数用来读、写和操作磁盘文件。MFC将这些函数和CFile类融合在面向对
象的模型里。其中CFile类允许把文件当作对象,并用 CFIIe成员函数,如 Read和Write,对
它们进行操作。CFile具有MFC编程人员实现低级文件1/0所需要的所有工具。
    编写文件1/0代码最主要的原因是为了支持文档的存储和加载。尽管用CFile对象实
现磁盘文档的读写并没有错,但是大部分MFC应用程序不会这么做,而是用CArchive对象。
通过MFC实现巧妙的运算符重载,大部分数据都可以串行化为CArchive,即作为一个字节流
输出,或从一个CArchive并行化为初始状态。这在句法实现上也非常简单。另一方面,如果
CA。hive对象挂接在CFile对象上,被串行化为该CA。hive的数据就以透明方式写到磁盘
上。此后,您还可以把与此文件有关的Carchive并行化,最终重建以这种方式存档的数据。
    通过将文档串行化或CArchive并行化可以实现文档的存贮和加载。这是MFC文档/视
图体系结构的基础构件之一。尽管目前对CArchive的了解还只限于有限的几种用法,但是
可以确信:在第9章我们开始编写文档/视图应用程序时,Carchive的其他方法会使它更加
容易操作。
6.ICFile类
    CFile是比较简单的类,它封装了 Win32 API用来处理文件1/0的那部分。在多于25个
的成员函数中有用来打开和关闭文件的函数,读和写文件数据的函数,删除和重命名文件的
函数,还有检索文件信息的函数。它的公用数据成员之一,。hFile,保存着与CFile对象相
关联的文件的句柄。一个受保护的   CString数据成员,名为   in- strFileName,保存着文件的名
称。成员函数GetFilePath、GetFileName和GetFileTitle可以用来提取整个文件名或文件名的
一部分。例如:如果完整的文件名和路径名为C:\Personal\File.txt,GetFIlePath返回整个字
符串,GetFileName返回“File‘txt”,而GetFileTitle返回“FIIe.”。
    但是如果细讲这些函数,就等于忽略了对编程人员来说CFile拥有的重要功能,即用来
读写磁盘文件的函数。下面几部分简要地介绍了CFIIe的使用方法,以及错误发生时CFile
的奇特通知方式。(提示:如果您从没有用过 C+十异常处理,现在该是改进手工编程方式的
时候了。)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -