STL - stream
#include <iostream> #include <fstream> #include <sstream> using namespace std; void fstream_test() { ifstream fin("stream_test.cpp"); if(!fin) { cout<<"open file fail!"<<endl; return; } string line; while(getline(fin, line)) { cout<<line<<endl; } string word; while(fin>>word) { cout<<word<<endl; } char buf[10]; while(fin.read(buf, 10)) { cout<<buf<<endl; } char ch; while(fin.get(ch)) { cout<<ch<<endl; } fin.close(); ofstream fout("stream_test.log"); if(!fout) { cout<<"open file fail!"<<endl; return; } for(int i=0; i<10; ++i) { fout<<"test"<<i<<endl; } fout.close(); } void sstream_test() { stringstream ss; string str; ss<<"just a test "<<2013<<"!"; cout<<ss.str()<<endl; while(ss>>str) { cout<<str<<endl; } cout<<ss.str()<<endl; } int main(int argc, char* argv[]) { //fstream_test(); //sstream_test(); stringstream ss1; ss1<<"just a test "<<2013<<"!"; const char* str1 = ss1.str().c_str(); //str()返回的是临时对象 stringstream ss2; ss2<<"just a test "<<2013<<"???"; const char* str2 = ss2.str().c_str(); cout<<str1<<endl; cout<<str2<<endl; return 0; }