一个简单的文件读取问题请问怎样用C++把一个文本文件的全部内容读取到一个string变量里面?要求原原本本地
一个简单的文件读取问题
请问怎样用C++把一个文本文件的全部内容读取到一个string变量里面?
要求原原本本地读出(即连换行、空格、跳格等都能正确读取)
效率要尽可能高
[解决办法]
ifstream in(...)
in.rdbuf()
[解决办法]
ifstream ifile( "data.txt ");
cout < <ifile.rdbuf() < <endl;
[解决办法]
boost库中给出的函数:
void load_file_style(string& s, istream& is) //将文件链接为一个string,保留源格式
{
s.erase();
s.reserve(is.rdbuf()-> in_avail());
char c;
while(is.get(c))
{
if(s.capacity() == s.size())
s.reserve(s.capacity() * 3);
s.append(1, c);
}
}
