| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> C++知识库 -> c++/MFC文件操作 -> 正文阅读 |
|
[C++知识库]c++/MFC文件操作 |
学校c++期末实践课程基于MFC实现通讯录管理系统需用到文件操作来读取文件中的姓名、电话等信息来实现查找功能,故向各位大佬学习记录之。如有错误,请各位大佬指正。 (win+左/右箭头可实现分屏) 本文只涉及到文本文件的操作。 一: 1.CFile类 (1)它是MFC的文件操作基本类。 (2)对于字符,文本文件存储的是它的ASCII码 ? ? ? ? ?对于汉字,存的是它的内码,即两位ASCII码。 2.CFile与CStdiofile (1)CStdiofile是CFile的派生类 (2)能够对文件进行流式操作(具体什么是流式操作,我也不知道) (3)可以按行读取写入! 3.文本文件读写过程 五步: 定义文件变量 打开指定文件 向文本文件中写入信息 从文本文件中读取信息 关闭文件 (1)定义文件变量 格式:CStdiofile f1; (2)打开指定文件 方式一:? ①通过CStdiofile的构造函数来打开磁盘文件 ②用标志位(nOpenFlags)指定打开的方式:只读、只写、读写等 ③常见打开方式: CFile::typeText:以文本文件的形式打开文件 CFile::modeCreate:如果指定文件名的文件不存在,则新建文件; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 如果文件存在并且没有设置CFile::modeNoTruncate标志,则清空文件。 CFile::modeNoTruncate:如果文件存在,不清空文件中的数据。 CFile::modeRead:以只读方式打开文件 CFile::modeReadWrite:以可读可写方式打开文件 CFile::modeWrite:以只写方式打开文件 ?方式二: 调用空的构造函数CStidoFile(),然后用CStdioFile::Open()打开文件 例如:fi.open("myfile.txt",CFile::modeCreate|CFile::typeText|CFile::modeRead); 结果:如果没有myfile.txt文件,则生成该文件。 3.向文本文件中写入信息 (1)CStdioFile提供了函数WriteString来向文本文件中写入文本 (2)WriteString函数的格式: void WriteString(LPCTSTR lpsz); WriteString的参数lpsz是一个以”/0”字符结束的字符串,要把这个字符串的内容写入文件。 (3)使用WriteString函数时,如果需要换行,在需要换行的地方输出"/n" 4.从文本文件中读取信息 (1)CStidoFile提供了函数ReadString来读取文本 (2)ReadString有两种形式: ①virtual LPTSTR ReadString(LPTSTR lpsz, UINIT nMax); lpsz :是用户提供的一个指向字符串的指针,它用来接受从文件读出的文本,以”/0”结束。 nMax是本次所允许读入的文本字符个数,不计“/0”字符,也就是说最多能读入nMax-1个文本字符。 ReadString的返回值是一个LPTSTR类型的指针,它指向从文件读出的文本字符串,如果到达文件尾,则返回NULL。 ?②BOOL ReadString(CString& rString); 参数rString用来容纳从文件读出的文本。 5.关闭文件 f1.close(); 二: 1.读文本文件指定的一行 CStdiofile myfile; myfile.open("f1.txt",CFile::modeCreate|CFile::modeNoTruncate|CFile::typeText|CFile::modeReadWrite); CString strspecific; int order; while(myFile.ReadString(strspecific)) { if(2==order)//指定读第二行 { AfxMessageBox(strspecific); } order=order+1; } 2.移动文件指针 3.MFC模糊查找 //模糊查找 ?? ??? ??? ?} |
|
C++知识库 最新文章 |
【C++】友元、嵌套类、异常、RTTI、类型转换 |
通讯录的思路与实现(C语言) |
C++PrimerPlus 第七章 函数-C++的编程模块( |
Problem C: 算法9-9~9-12:平衡二叉树的基本 |
MSVC C++ UTF-8编程 |
C++进阶 多态原理 |
简单string类c++实现 |
我的年度总结 |
【C语言】以深厚地基筑伟岸高楼-基础篇(六 |
c语言常见错误合集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 11:55:59- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |