首页 > 代码库 > C++ 关于I/O

C++ 关于I/O

istringstream:  istringstream 对象可以绑定一行字符串,然后以空格为分隔符把该行分隔开来。创建对象:istringstream  strsm("aa bb c");//

strsm>>astr;//string astr

strsm>>bstr;//string bstr

cout<<astr<<"--"<<bstr<<"\n";//输出 aa--bb

ifstream | ofstream:

创建对象infile:ifstream infile=open(inf.c_str(),ios::in);//string inf

读内容getline(infile,fline);//string fline

 

创建对象 ofstream  filename=open(a.c_str() );//(string a..) 创建一个文件名为a的文件。

向它写入内容: namefile<<str[1]<<".\t|"<<str[2]<<endl;

http://panpan.blog.51cto.com/489034/101625

c_str()..........................................

 

路径问题举例:

绝对路径(不适合代码移植)

ifstream infile("F:\\kuaipan\\zhubajie\\url_spmer-minus3+1.txt"); // c++中的\\等于/ 这里用的是绝对路径

也可以写成:

ifstream infile();

infile.open("F:\\kuaipan\\zhubajie\\url_spmer-minus3+1.txt");

也可以写成:

ifstream infile("F:/kuaipan/zhubajie/url_spmer-minus3+1.txt");

相对路径:

ifstream infile("..\\123.txt");// 

http://my.oschina.net/u/243648/blog/53073

读写文件:

运算符:<<  ,>> 只能进行文本文件的读写操作。

成员函数:get put read write  等 。 经常和read配合使用的函数是gcount(),用来获得实际读取的字节数

http://www.cnblogs.com/ifeiyun/articles/1573134.html

任务读取文件所有内容:循环 一个个字符(get)的读。

http://zhidao.baidu.com/link?url=uuA-YoCgpixbTRhnQsbkNbaUuS7XwjpUaCCdPan6Us6fTdmghJG0Ni3uU_LS7G1T-gUZR8cPJl7CEnjtHYPVoa 

 

流的特点:

流类(stream class)的读写是由char 类型组成的流。此外,标准库还定义了一组相关的类型,支持wchar_t类型。

形参或有返回类型不能为流类型。如果需要传递或返回IO对象,则必须传递或返回指向该对象的指针或引用。

cin是标准输入的istream类的对象。它有成员函数:cin.clear()  cin.eof()等。