- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CFile和CStdioFile成员函数
CFile和CStdioFile?的使用方法
(2011-09-20 18:11:42)
转载▼
标签:
cstdiofile
操作
读取
it 分类: CStdioFile类的声明保存再afx.h头文件中。CStdioFile类继承自CFile类,CStdioFile对象表示一个用运行时的函数fopen打开的c运行时的流式文件。流式文件是被缓冲的,而且可以以文本方式(默认)或者二进制方式打开。CStdioFile类不支持CFile类中的Duplicate、LockRange、UnlockRange函数,如果你使用了,会得到CNotSupportedException类的错误。CStringFile类默认的是按照Text模式操作文件。CFile 类默认的是按照二进制模式操作文件。这里大致说明一下二进 制模式和Text模式的区别。二进制模式:对于一行的结尾我们必须输入”\r\n”,才能 表示回车换行的效果。Text模式:”\r”回车的工作是自动完成的,我们只需要写入”\n”即可。所以我们再使用文本模式时要主要,当我们从外部读入文件时,”\r\n”会被翻译成”\n”,写入文件时,我们对于回车换行只需提供”\n”,即可,”\r\n”会被写入到文件中。m_pStream成员变量:????? 打开文件的指针。?构造函数:CStdioFile();CStdioFile(FILE *pOpenStream);CStdioFile(LPCTSTR lpFileName, UINT nOpenFlags);throw(CFileException);FILE *pOpenStream:指的是c运行函数fopen调用后返回的文件指针。LPCTSTR lpFileName:指的是被打开的文件(绝对地址或相对地址)UINT nOpenFlags:指的是CFile类中所描述的打开文件的方式。?virtual LPTSTR ReadString(LPTSTR lpsz, UINT nMax);throw(CFileException);如果使用该函数读取文本文件,当遇到”\r\n”,停止读取,并去掉”\r”,保留”\n”,并在字符串尾部增加”\0”,nMax的长度包含 有”\0”字符,实际的分析如下:如果nMax = 字符数,读取(nMax-1)个 字符+0x00;如果nMax = 字符数 + 1,读取nMax个字符+0x00;如果nMax 字符数,读取nMax个字符+0x0A(”\n”) + 0x00;如果文件有多行,则当文件没有读完时,返回NOT NULL, 读到文件尾,返回NULL。?BOOL ReadString(CString rString);throw(CFileException);读取一行文本到rString中, 遇到回车换行符停止读取,回车和换行符均不读到rString中,尾部也不添加”0x00”。如果文件有多行,则当文件没有读完时,返回TRUE,读到文件 尾,返回FALSE。?virtual void WriteString(LPTSTR lpsz);throw(CFileException);将缓冲区中的数据写入到与CStdioFile对象相关联的文件中,不支持CString类型数据写入,结束的”\0”不被写入到文件中,lpsz缓冲区中的所有换行符被替换为回车换行符即”\n”转换为”\r\n”。
?
CFile//创建/打开文件?CFile file;?file.Open(_T(test.txt),CFile::modeCreate|CFile::modeNoTruncate|CFile::modeReadWrite);
文件打开模式可组合使用,用“|”隔开,常用的有以下几种:?CFile::modeCreate:以新建方式打开,如果文件不存在,新建;如果文件已存在,把该文件长度置零,即清除文件原有内容。?CFile::modeNoTruncate:以追加方式打开,如果文件存在,打开并且不将文件长度置零,如果文件不存在,会抛出异常。一般与CFile::modeCreate一起使用,则文件不存在时,新建一个文件;存在就进行追加操作。?CFile::modeReadWrite:以读写方式打开文件。?CFile::modeRead:只读。?CFile::modeWrite: 只写。
//写入数据?CString strValue = Hello World!;?file.Write(strValue,strValue.GetLength());
//追加数据?file.SeekToEnd(); //将指针移至文件末尾进行追加?fil
您可能关注的文档
最近下载
- 绿色施工实施记录表.docx VIP
- 实验gpio输出控制-led闪烁、流水灯.pdf VIP
- 绿色施工实施记录表.pdf VIP
- 电力信息网络安全防护系统设计方案.pdf VIP
- 肺癌转移脑的护理.pptx
- ASME B16.34 INTERPRETATIONS 国外国际标准规范.pdf VIP
- 项目冬期灌浆专项施工方案.pdf VIP
- 绿色低碳转型.pptx VIP
- 关于环保对企业公司环境有关 的外文文献翻译成品:绿色创新对环境和企业绩效的影响:利益相关者视角(中英文双语对照).docx VIP
- RockwellAutomation罗克韦尔QuickStick 150 用户手册用户手册说明书.pdf
文档评论(0)