现在的位置: 首页 > 综合 > 正文

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

2013年10月02日 ⁄ 综合 ⁄ 共 882字 ⁄ 字号 评论关闭

 字符串流输入:
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));
// 取一行字符串

抱歉!评论已关闭.