MFC读写文件CStdioFile
2016-03-29 11:14
169 查看
CStdioFile类的用法(除此之外还有CFile,CArchive,CMemFile等等)。
MFC中使用CStdioFile类封装了C++运行时刻文件流的操作,流文件采用缓冲方式,支持文件模式和二进制模式文件操作,默认方式为文本模 式。
CStdioFile类从CFile类继承,具有如下三个构造函数:
1、CStdioFile():建立一个CStdioFile类的对象,但不打开文件;
2、CStdioFile(FILE* pOpenStream):建立一个CStdioFile类的对象,并将该对象同一个已经打开的文件相联系;
3、CStdioFile(LPCTSTR lpszFileName, UINT nOpenFlags):建立一个CStdioFile类的对象,同时打开一个文件,nOpenFlags是打开文件的方式,它可以取值如下所述:
·CFile::modeCreate:创建新文件,并覆盖已有文件
·CFile::modeRead:以只读方式打开文件
·CFile::modeReadWrite:以读/写方式打开文件
·CFile::modeWrite:以只写方式打开文件
·CFile::shareExclusive:不允许其他进程读/写文件
·CFile::typeText:表示以文本方式打开文件
·CFile::typeBinary:表示以二进制方式打开文件
以上是几种常用的打开方式,还有另外几种可以去查阅相关资料。例如你可以这样创建一个新文件:
CStdioFile ioFile("新文本.txt", CFile::modeCreate|CFile::modeWrite);或者
CStdioFile ioFile;
ioFile.Open("新文本.txt", CFile::modeCreate|CFile::modeWrite);
表示创建一个名为“新文本”扩展名为TXT的只写文件,另外因为没有说明,默认为以文本方式打开而不是二进制方式。文件的关 闭:ioFile.Close();
CStdioFile类中有两种特殊的读/写文件的方法,ReadStrng和WriteString,分别读出或写入一个文本行。例如使用 WriteString时,可以这样使用:
CString str = "这是一行文本\n";
ioFile.WriteString(str);
若要达到同样的目的,对应CFile而言,则应这样定义str = "这是一行文本\r\n"。
ReadString有两种重载的用法,可以指定读出的字符数,也可以不指定,如果在读文件过程中发生异常,将产生CFileException异 常。
MFC中使用CStdioFile类封装了C++运行时刻文件流的操作,流文件采用缓冲方式,支持文件模式和二进制模式文件操作,默认方式为文本模 式。
CStdioFile类从CFile类继承,具有如下三个构造函数:
1、CStdioFile():建立一个CStdioFile类的对象,但不打开文件;
2、CStdioFile(FILE* pOpenStream):建立一个CStdioFile类的对象,并将该对象同一个已经打开的文件相联系;
3、CStdioFile(LPCTSTR lpszFileName, UINT nOpenFlags):建立一个CStdioFile类的对象,同时打开一个文件,nOpenFlags是打开文件的方式,它可以取值如下所述:
·CFile::modeCreate:创建新文件,并覆盖已有文件
·CFile::modeRead:以只读方式打开文件
·CFile::modeReadWrite:以读/写方式打开文件
·CFile::modeWrite:以只写方式打开文件
·CFile::shareExclusive:不允许其他进程读/写文件
·CFile::typeText:表示以文本方式打开文件
·CFile::typeBinary:表示以二进制方式打开文件
以上是几种常用的打开方式,还有另外几种可以去查阅相关资料。例如你可以这样创建一个新文件:
CStdioFile ioFile("新文本.txt", CFile::modeCreate|CFile::modeWrite);或者
CStdioFile ioFile;
ioFile.Open("新文本.txt", CFile::modeCreate|CFile::modeWrite);
表示创建一个名为“新文本”扩展名为TXT的只写文件,另外因为没有说明,默认为以文本方式打开而不是二进制方式。文件的关 闭:ioFile.Close();
CStdioFile类中有两种特殊的读/写文件的方法,ReadStrng和WriteString,分别读出或写入一个文本行。例如使用 WriteString时,可以这样使用:
CString str = "这是一行文本\n";
ioFile.WriteString(str);
若要达到同样的目的,对应CFile而言,则应这样定义str = "这是一行文本\r\n"。
ReadString有两种重载的用法,可以指定读出的字符数,也可以不指定,如果在读文件过程中发生异常,将产生CFileException异 常。
相关文章推荐
- HD 2955 Robberies(0-1背包)
- Oracle中trim函数详解
- hdoj 1787《《欧拉函数》》
- 3.内存连续分配管理方式
- 错误Cannot change version of project facet Dynamic Web Module to 3.0
- SQL Server 重新初始化系统数据库中的单引号问题
- CentOS 解决Device eth0 does not seem to be present和ifconfig有其他网卡IP
- 让Mac中的TexShop支持中文
- 基于ffmpeg的播放器起播延迟优化
- Linux ssh安全设置,及免密码登录
- Corosync/Pacemaker+DRBD实现高可用集群与DRBD共享
- A Byte of Python 笔记(3)运算符和表达式
- JDK安装与环境变量配置
- 查询手机或邮箱注册过哪些网站
- LeetCode 124. Binary Tree Maximum Path Sum
- Google gflags使用说明
- static 静态方法 有什么优缺点 PHP中静态方法(static)与非静态方法的使用及区别
- java基础知识总结9(数据库篇2)
- Volley的基本用法
- 树莓派3 wifi设置