C++I/O技术

C++I/O技术
1标准输入输出:cout, cin, cerr,clog以及对应于4个字节处理的流对象wcout,wcin,werr,wclog
#include <iostream>
using namespace std
cout<<“输出/n;
int i;
cin >>i; //输入
2文件输入输出:
#include <fstream.h>
#include <iostream.h>
using namespace std
//写文件
       ofstream wfile;
       wfile.open("d://ni.txt",ios::out|ios::app);
       if (!wfile)
       {
              cout<<"打开失败!"<<endl;
              return;
       }
       wfile<<"apple"<<' '<<"苹果"<<endl;
       wfile<<"orange"<<' '<<"橘子"<<endl;
       wfile.close();
//读文件
       ifstream rfile;
       rfile.open("d://ni.txt",ios::in);
       if (!rfile)
       {
              cout<<"打开失败!"<<endl;
              return;
       }
       char temp[10],temp2[10];
       wfile>>temp>>temp2;
       cout<<temp<<' '<<temp2<<endl;
       wfile>>temp>>temp2;
       cout<<temp<<' '<<temp2<<endl;
       rfile.close();
//单个字符读出
       ifstream rfile;
       rfile.open("d://ni.txt",ios::in|ios::binary);
       if (!rfile)
       {
              cout<<"打开失败!"<<endl;
              return;
       }
       char c;
       while (!rfile.eof())
       {
              rfile.get(c);
              cout<<c;
       }
       rfile.close();
//单个字符写入
       ofstream wfile;
       wfile.open("d://ni.txt",ios::out|ios::app);
       if (!wfile)
       {
              cout<<"打开失败!"<<endl;
              return;
       }
       char c='a';
       wfile.put(c);
       wfile.close();
//读取一行中的多个字符
       ifstream rfile;
       rfile.open("d://ni.txt",ios::in);
       if (!rfile)
       {
              cout<<"打开失败!"<<endl;
              return;
       }
       char temp[30];
       rfile.getline(temp,20);
       cout<<temp;
       rfile.close();
//读取指定个数个字符
       ifstream rfile;
       rfile.open("d://ni.txt",ios::in);
       if (!rfile)
       {
              cout<<"打开失败!"<<endl;
              return;
       }
       char temp[100];
       memset(temp,'/0',100);
       rfile.read(temp,50);
       cout<<temp<<endl;
       rfile.close();
//写入指定个数个字符
       ofstream wfile;
       wfile.open("d://ni.txt",ios::out|ios::app);
       if (!wfile)
       {
              cout<<"打开失败!"<<endl;
              return;
       }
       char temp[]="welcome to beijing!";
       wfile.write(temp,10);
       wfile.close();
//随即写入写出
fstream rwfile;
       rwfile.open("d://ni.txt",ios::in|ios::out|ios::binary|ios::trunc);
       if (!rwfile)
       {
              cout<<"打开失败!"<<endl;
              return;
       }
       char c;
       rwfile<<"Hello my friends!";
       rwfile.seekg(6,ios::beg);
       rwfile.get(c);
       rwfile.close();

       rwfile.open("d://ni.txt",ios::in|ios::out|ios::binary|ios::trunc);
       if (!rwfile)
       {
              cout<<"打开失败!"<<endl;
              return;
       }
       rwfile.seekp(2,ios::beg);
       rwfile<<c;
       rwfile.close();
注:ios::in 以读取方式打开
ios::out 以写入方式打开
ios::app 每次写入数据时,将数据写在尾部
ios::ate 仅初始时将指正移到末尾,仍可在任意位置写入数据
ios::trunk 写入数据时,将以前文件清空,文件不存在时自动创建
ios::binary 以二进制方式打开,不做任何字符转换
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章