2011-11-09 31 views
1

是否有任何簡單的方法可以將所有文本從小文本文件中讀取到使用C++ STL iostream的std :: string中?StreamReader.ReadToEnd()for C++ iostream的等價物

我已經試過類似

ifstream f("file.txt"); 
stringstream ss; 

while(!f.eof()){ 
    array<char, READ_SIZE> buf; 
    auto size = f.rdbuf()->sreadn(buf.data(), buf.size()); 
    if(size==0)break; 
    ss<<string(buf.data(), size); 
} 

string str=ss.str(); 

什麼更好的辦法來做到這一點?

回答

2
ifstream f("file.txt"); 
ostringstream ss; 
ss << f.rdbuf(); 

string str = ss.str(); 
+0

太棒了。謝謝。 –