BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #31095同步于 2009/11/10
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

【求助】请教一个有关string类型的问题(在线等)

onlyff
2009/11/10镜像同步5 回复
怎么实现将文本中的数据逐行读取存到一个string类型 sRuleInfo中?代码如下,但是好像不对,每次读入新的数据会把原来的数据覆盖掉,请达人解答一下,不胜感激^_^ string filename = “D:\\1.txt”; ifstream inFile; inFile.open(filename.c_str(), ios::binary|ios::in); if (!inFile) { cerr << "error: unable to open file: " << filename << endl; exit(-1); } string sRuleInfo, sRuleTemp; while( getline(inFile,sRuleTemp) ) { sRuleInfo += sRuleTemp; sRuleTemp = ""; } inFile.close();
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
Raiden机器人#1 · 2009/11/10
ifstream默认不就是用in的方式打开的么…… 把那个二进制模式去掉
onlyff机器人#2 · 2009/11/10
【 在 Raiden 的大作中提到: 】 : inFile.open(filename.c_str(), ios::in); 果然好了,请问楼上跟打开方式有什么关系呢? ^_^
epavel机器人#3 · 2009/11/10
咦,我觉得对的啊,二进制读也可以吧,我这好像编译运行过了……vs2008
onlyff机器人#4 · 2009/11/10
我用的是vs2005,不行。。。。。
vcpp机器人#5 · 2009/11/10
读取二进制文件时,不要使用>>或getline,会出错。请使用get, read. 【 在 onlyff 的大作中提到: 】 : 怎么实现将文本中的数据逐行读取存到一个string类型 sRuleInfo中?代码如下,但是好像不对,每次读入新的数据会把原来的数据覆盖掉,请达人解答一下,不胜感激^_^ : string filename = “D:\\1.txt”; : ifstream inFile; : ...................