程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++的處理流

C++的處理流

編輯:關於C++

cpp的處理流

一堆規則,沒有什麼特別說明的。不過流都是有緩沖區的,這點要記住了。如果不刷新緩沖區或者關閉文件,數據內容可能不會進入文件。

流 數據的封裝

數據緩沖

流和緩沖區

streambuf 類管理緩沖區,提供填充,清空,刷新,處理緩沖區的功能
ios 輸出和輸入的基礎類,它有一個成員變量為streambuf
istream和ostream 從ios派生專門管理輸入輸出行為
iostream從istream 和ostream派生,處理屏幕輸出
fstream  處理文件的輸入和輸出

標准io對象

 cin
 cout 
 cerr
 clog

流的簡單操作,比較瑣碎,簡單的明白即可,需要的時候取查閱手冊

cout << xxx;
cin >> xxx;

簡單的文件讀寫

ios:app 附加到文件的末尾
ios:ate 調到文件的末尾但是可以在文件的任何地方寫入數據
ios:trunc 刪除已有的文件的內容
ios:nocreate 如果文件不存在,打開操作失敗
ios:noreplace 如果文件以及存在 打開操作失敗
ios::binary

二進制文件讀寫

 見代碼
//
//  main.cpp
//  use_stream
//
//  Created by bikang on 16/11/1.
//  Copyright (c) 2016年 bikang. All rights reserved.
//

#include 
#include 

using namespace std;

void tstream(int argc, const char * argv[]);
void tcin();

int main(int argc, const char * argv[]) {
    //tcin();
    tstream(argc,argv);
    return 0;
}

void tcin(){
    int mInt;
    cin >> mInt;
    cout << mInt;

}

void tstream(int argc, const char * argv[]){

    //簡單的文件多謝
    cout << "tstream"<< endl;
    string filename = "test123.log";
    ofstream fout(filename);

    if(fout){
        fout << "line go go"<< endl;
        fout << "567"<< endl;
        fout << "234"<< endl;
        fout.close();
    }
    char buf[4096];
    ifstream fin(filename);
    if(fin){
        while(!fin.eof()){
            fin.getline(buf, 4096);
            cout << buf << endl;
        }
    }

    fstream fp(filename,ios::app);
    if(fp){
        fp <<  "dd";
        fp.close();
    }


    //二進制數據

    ofstream fout2(filename,ios::binary|ios::app);
    if(fout2){
        fout2.write("hello", 6);
        fout2.close();
    }

    ifstream fin2(filename,ios::binary);
    if(fin2){
        while (!fin2.eof()) {
            fin2.read(buf,4096);
            cout << buf;
        }
        fin2.close();
    }

    //命令行
    cout << endl;
    for(int i=0;i
        
   
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved