basic_filebuf::open

開啟檔案。

basic_filebuf<Elem, Tr> *open(
    const char *_Filename,
    ios_base::openmode _Mode,
    int _Prot = (int)ios_base::_Openprot
);
basic_filebuf<Elem, Tr> *open(
    const char *_Filename,
    ios_base::openmode _Mode
);
basic_filebuf<Elem, Tr> *open(
    const wchar_t *_Filename,
    ios_base::openmode _Mode,
    int _Prot = (int)ios_base::_Openprot
);
basic_filebuf<Elem, Tr> *open(
    const wchar_t *_Filename,
    ios_base::openmode _Mode
);

參數

  • _Filename
    開啟的檔案名稱。

  • _Mode
    中的其中一個 ios_base::openmode的列舉型別。

  • _Prot
    預設檔案開啟保護,相當於在 _fsopen _wfsopen的 shflag 參數。

傳回值

如果檔案指標設定為null指標,則函式會傳回null指標。否則,會傳回 this

備註

成員函式會呼叫 fopen開啟檔案名稱filename 檔案,檔名strmode(,)。strmode 從 **mode &**無法決定| (ate __AMP__RYAN| 二進位檔):

  • ios_base::in 變成 "r" (讀取的開啟現有的檔案)。

  • ios_base::ios_base::out | ios_base::trunc 變成 "w" (截斷現有檔案或寫入的建立)。

  • ios_base::out|應用程式 變成 "a" (附加的全部開啟現有文件)。

  • ios_base::in | ios_base::out 變成 "r+" (讀取和寫入的開啟現有的檔案)。

  • ios_base::in | ios_base::out | ios_base::trunc 變成 "w+" (截斷現有檔案或提供讀取和寫入建立)。

  • ios_base::in|ios_base::out|ios_base::應用程式 變成 "a+" (開啟現有的檔案讀取和附加的全部小寫)。

如果 mode & ios_base::binary 為非零值(Nonzero),則函式 b 附加至 strmode 開啟二進位資料流取代文字資料流。在檔案指標 fp並儲存 fopen 傳回的值。如果 mode & ios_base::ate 為非零值(Nonzero),而且檔案指標不為null指標,函式會將資料流的 fseek(fp, 0, SEEK_END)至檔案的結尾。如果該位置的作業失敗時,函式會呼叫 關閉(fp)和儲存檔案指標的null指標。

如果檔案指標不為null指標,函式來判斷檔案轉換為: use_facet<codecvt<Elem, char,供 反向溢位溢位使用的 traits_type::state_type> > (getloc),否則為。

如果檔案指標設定為null指標,則函式會傳回null指標。否則,會傳回 this

範例

提供使用的範例 open參閱 basic_filebuf:: 關閉

需求

標題: <fstream>

命名空間: std

請參閱

參考

basic_filebuf Class

iostream 程式設計

iostreams 慣例