首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

有关文件的读取解决方案

2012-03-23 
有关文件的读取我想读取一个文本文件中的所有内容,但以下代码只能按行读取,而且空格、Tab符和回车都读不进

有关文件的读取
我想读取一个文本文件中的所有内容,但以下代码只能按行读取,而且空格、Tab符和回车都读不进来。

ifstream fin("abc.txt");
if (!fin)
{
cout << "Can't open file!\n";
  return 1;
}
string str;
fin >> str;
cout << str << endl;
fin.close();

请问怎样才能读取所有内容?如文件中有:
aaa bb
  ccc
 d

而我要把上述内容读入一个字符串str,且空格和回车以及Tab符也要。


[解决办法]
使用其他接口,不要使用ifstream::operator>>
for example istream::read
[解决办法]


for(string temp;getline(fin,temp);)

这个是用getline读入整行的字符 包括空格,但是读入到temp中的时候 文件中的 每个换行符被滤掉了
 ,所以还得加一个换行符,再把每次读入的temp加入到str的末尾 这样就能满足你的要求了
懂了吗??





[解决办法]
ifstream fin("abc.txt",ios::binary|...) 记不太清怎么写了,要按二进制格式读取

热点排行