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 以二進制方式打開,不做任何字符轉換
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章