流的使用之二:字符串输入流和文件输入流

 字符串流输入:
istringstream iss (strSrcObject);
cout << iss.rdbuf ();    // rdbuf 获取 stream buffer 的指针,输出后定位到尾部
iss.seekg (0, ios::beg); // 定位到 stream buffer 的头位置
cout << iss.str ();      // str 等同于 rdbuf () -> str (),输出后定位到头部
cout << iss;             // 输出的是iss对象的地址
iss >> iObject;          // 取整形数
iss >> strObject;        // 取字符串
iss >> charObject;       // 取字符
iss.ignore (/*1,EOF*/);  // 取出字符并定位到一个字符之后
iss.ignore (1000, ',');  // 取出字符并定位到字符','之后

文件流输入:
ifstream ifs (FILENAME);
//运算符操作
cout << ifs.rdbuf ();    // 将文件内容全部输出,输出后定位到头部
cout << ifs;             // 输出的是ifs对象的地址
ifs >> iObject;          // 取整形数
ifs >> strObject;        // 取字符串
ifs >> charObject;       // 取字符
//其它
ifs.seekg (0, ios::beg); // 定位到 stream buffer 的头位置
ifs.ignore (/*1,EOF*/);  // 取出字符并定位到一个字符之后
ifs.ignore (1000, ',');  // 取出字符并定位到字符','之后
ifs.close ();            // 关闭文件流
ifs.tellg ();            // 取指针所在位置
ifs.gcount ();           // ???
//一般操作
ifs.get (charOject);     // 取一个字符
ifs.getline (charBuffer, sizeof (charBuffer)); // 取一行字符串

你可能感兴趣的:(ios,Stream,buffer)