C 學習筆記(二十一) C 檔案輸入和輸出

2021-08-17 13:57:57 字數 1800 閱讀 2674

一、寫入檔案

要讓程式寫入檔案,可以這樣做:

1.建立乙個ofstream物件來管理輸出流;

2.將該物件與特定的檔案關聯起來;

3.以使用cout的方式使用該物件,唯一的區別是輸出將進入檔案,而不是螢幕

先包含標頭檔案fstream

#include

然後宣告乙個ofstream物件

ofstream fout; // create an ofstream object named fout

使用open方法將fout物件和特定的檔案關聯起來

void open ( const char * filename,ios_base::openmode mode = ios_base::in | ios_base::out ); 

void open(const wchar_t *_filename, ios_base::openmode mode= ios_base::in | ios_base::out,int prot = ios_base::_openprot); 

引數: filename 待操作的檔名 

mode 開啟檔案的方式 

prot 開啟檔案的屬性

ios::binary: 以二進位制方式開啟檔案,預設的方式是文字方式。兩種方式的區別見前文

ios::in:   檔案以輸入方式開啟(檔案資料輸入到記憶體)

ios::out:   檔案以輸出方式開啟(記憶體資料輸出到檔案)

ios::nocreate:不建立檔案,所以檔案不存在時開啟失敗

ios::noreplace:不覆蓋檔案,所以開啟檔案時如果檔案存在失敗

ios::trunc:  如果檔案存在,把檔案長度設為0

fout.open("test.txt"); 或者 ofstream fout("test.txt");

// 寫檔案

// 定義乙個輸出檔案流物件, 關聯乙個檔案

// 關聯成功,相當於開啟了乙個檔案,之後檔案流物件的操作相當於對檔案的操作

ofstream fout("test.txt");

if (!fout)  // ofstream 過載了!運算子,如果開啟失敗,返回真

cout << "檔案開啟失敗" << endl;

就可以向檔案輸入資料:

fout("hello world!"); 或者fout << "hello world" << endl;

關閉檔案連線:

fout.close();

二、讀入檔案

ifstream fin("test.txt");

if (!fin)

cout << "檔案開啟失敗" << endl;

char str[100];

for (int i = 0; i < 4; i++)    //讀四行

fin.ignore(4);   //忽視跳過4個字元

char c;

fin >> c;

cout << c << endl;      //結果就讀了乙個字元『o'

char ch;

while ((ch=fin.get()) != eof)

cout << ch;   //輸出緩衝區裡的

fin.close();

c語言學習筆記二十一

makefile中關於變數的語法規則 示例 如下 foo bar bar huh?all echo foo 執行make後輸出 huh?優點 可以把變數的值推遲到後面定義 示例 main.o main.c cc cfags cppflags c cc gcc 編譯選項 cfags o g 預處理選項...

python 學習筆記(二十一)

coding utf8 author liwei windows平台多程序匯入multiprocessing模組 from multiprocessing import process,queue from multiprocessing import pool import os,time,ran...

C 基礎 二十一 檔案操作

檔案開啟方式 ios in 讀檔案開啟檔案 ios out 寫檔案開啟檔案 ios ate 初始位置 檔案尾 ios trunc 如果檔案存在,先刪除再建立 ios binary 二進位制方式1.以文字形式 寫檔案 include using namespace std include void t...