- MFC 教程
- MFC - 首页
- MFC - 概述
- MFC - 环境设置
- MFC - VC++ 项目
- MFC - 开始入门
- MFC - Windows 基础
- MFC - 对话框
- MFC - Windows 资源
- MFC - 属性表
- MFC - Windows 布局
- MFC - 控件管理
- MFC - Windows 控件
- MFC - 消息与事件
- MFC - ActiveX 控件
- MFC - 文件系统
- MFC - 标准I/O
- MFC - 文档视图
- MFC - 字符串
- MFC - CArray
- MFC - 链表
- MFC - 数据库类
- MFC - 序列化
- MFC - 多线程
- MFC - Internet编程
- MFC - GDI
- MFC - 库
- MFC 有用资源
- MFC - 快速指南
- MFC - 有用资源
- MFC - 讨论
MFC - 标准I/O
MFC 库提供了自己的文件处理版本。这是通过名为 CStdioFile 的类完成的。CStdioFile 类派生自 CFile。它可以处理 Unicode 文本文件和普通多字节文本文件的读取和写入。
以下是可以初始化 CStdioFile 对象的构造函数列表:
CStdioFile(); CStdioFile(CAtlTransactionManager* pTM); CStdioFile(FILE* pOpenStream); CStdioFile(LPCTSTR lpszFileName, UINT nOpenFlags); CStdioFile(LPCTSTR lpszFileName, UINT nOpenFlags, CAtlTransactionManager* pTM);
以下是 CStdioFile 中的方法列表:
序号 | 名称与描述 |
---|---|
1 | Open 重载。Open 设计用于默认的 CStdioFile 构造函数(重写 CFile::Open)。 |
2 | ReadString 读取一行文本。 |
3 | Seek 定位当前文件指针。 |
4 | WriteString 写入一行文本。 |
让我们再次通过创建一个新的基于 MFC 对话框的应用程序来查看一个简单的示例。
步骤 1 - 拖动一个编辑控件和两个按钮,如下图所示。
步骤 2 - 为编辑控件添加值变量 m_strEditCtrl。
步骤 3 - 为“打开”和“保存”按钮添加单击事件处理程序。
步骤 4 - 以下是事件处理程序的实现。
void CMFCStandardIODlg::OnBnClickedButtonOpen() { // TODO: Add your control notification handler code here UpdateData(TRUE); CStdioFile file; file.Open(L"D:\\MFCDirectoryDEMO\\test.txt", CFile::modeRead | CFile::typeText); file.ReadString(m_strEditCtrl); file.Close(); UpdateData(FALSE); } void CMFCStandardIODlg::OnBnClickedButtonSave() { // TODO: Add your control notification handler code here UpdateData(TRUE); CStdioFile file; if (m_strEditCtrl.GetLength() == 0) { AfxMessageBox(L"You must specify the text."); return; } file.Open(L"D:\\MFCDirectoryDEMO\\test.txt", CFile::modeCreate | CFile::modeWrite | CFile::typeText); file.WriteString(m_strEditCtrl); file.Close(); }
步骤 5 - 当编译并执行上述代码时,您将看到以下输出。
步骤 6 - 写入一些内容并单击“保存”。它将数据保存到 *.txt 文件中。
步骤 7 - 如果您查看文件的存储位置,您将看到它包含 test.txt 文件。
步骤 8 - 现在,关闭应用程序。运行相同的应用程序。当您单击“打开”时,相同的文本将再次加载。
步骤 9 - 它首先打开文件,读取文件,然后更新编辑控件。
广告