如何在c++中读取txt文件(最好有程序示例源代码)

 我来答
15296804918
2014-04-02 · TA获得超过152个赞
知道答主
回答量:114
采纳率:0%
帮助的人:74.2万
展开全部
#include <iostream.h>
#include <fstream.h>
#include <stdlib.h>
int main()
{
char buffer[256];
ifstream fliename("1.txt");
if(!fliename.is_open())
{
cout<<"Error opening file";
exit(1);
}
while(!fliename.eof())
{
fliename.getline(buffer,100);
cout<<buffer<<endl;
}
return 0;
}

当然你要是在MFC中的直接用CArchive;
CFile file(filename,CFile::modeCreate|CFile::modeWrite);
CArchive stor(&file,CArchive::store);
stor<<n_SaveData_MGS;
上面的存数据;
CFile file(Filename,CFile::modeRead);
CArchive textfile(&file,CArchive::load);
CString data;
textfile>>data;
这个是读数据,很方便
更多追问追答
追问
你好 如果我在这个文本里存入了学生的信息,而要在程序里用单链表来对文本内每个学生资料(一个学生对应一个结点)进行查询、添加、删除等操作,并保存操作过后的内容该怎么办?谢谢
追答
这个说一下我早年的算法,做个跟你的效果差不多,只是很老土。
你保存的 学生信息 按照 一定的格式存入 name1,sex1,age1+name2,sex2,age2+
看的懂这个意思不?
然后用CString把这个文件的数据全部读出来 存到CString test这个变量来。
然后定义两个CStringArray 对象a1,a2,按照拆字符的形式先按照"+"来拆保存在a1数组里面。
然后a1数组再一次循环a1.getcount()次,按照“,”来拆分 这样就能将 name1 sex1 age1拆分到a2对象里面了,这个时候读出a2对象的东西就行了。
上面这个思路不知道你明白吗,不过很麻烦。

当然现在我不怎么做了,我觉得你这样些数据直接存入xml 或者本地配置文件 之后读出来就行了。
关于从文件里面把一个个对象依次遍历出来的话,这个过程叫 文本的串行化, 你不想用我上面的那个方法的,可以去学一下 文本的串行化 还有学一下XML 。
匿名用户
2014-04-02
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式