开发手册 欢迎您!
软件开发者资料库

MFC - 标准I/O.

MFC标准I / O - 从简单和简单的步骤学习MFC,从基本概念到高级概念,包括概述,环境设置,VC ++项目,入门,Windows基础知识,对话框,Windows资源,属性表,Windows布局,控件管理,Windows控件,消息和事件,Activex控件,文件系统,标准I / O,文档视图,字符串,Carray,链接列表,数据库类,序列化,多线程,Internet编程,GDI,库。

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中的方法列表 :

Sr.No.姓名&说明
1

Open

已重载. Open设计用于默认的CStdioFile构造函数(Overrides CFile :: Open).

2

ReadString

读取一行文字.

3

Seek

定位当前文件指针.

4

WriteString

写一行文字.

让我们通过创建一个新的基于MFC对话框的应用程序再次查看一个简单的例子.

第1步 : 拖动一个编辑控件和两个按钮,如下面的快照所示.

Snapshot

第2步 : 为编辑控件添加值变量 m_strEditCtrl .

Snapshot

第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步 : 编译并执行上面的代码时,您将看到以下输出.

Snapshot

第6步 : 写点东西并单击"保存".它会将数据保存在* .txt文件中.

Snapshot

第7步 : 如果查看文件的位置,您会看到它包含test.txt文件.

快照

第8步 : 现在,关闭应用程序.运行相同的应用程序.单击"打开"时,将再次加载相同的文本.

步骤9 : 首先打开文件,读取文件,然后更新编辑控件.