C++ Fstream 庫 - open 函式



描述

開啟引數 filename 指定的檔案,將其與流物件關聯,以便對檔案內容執行輸入/輸出操作。引數 mode 指定開啟模式。

宣告

以下是 fstream::open 的宣告。

C++98

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

C++11

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

引數

  • filename − 包含要開啟的檔名的字串,其格式和有效性細節取決於庫實現和執行環境。

  • mode − 描述請求的檔案輸入/輸出模式的標誌。

返回值

  • 如果函式無法開啟檔案,則會為流設定 failbit 狀態標誌(如果使用成員異常註冊了該狀態標誌,則可能會丟擲 ios_base::failure)。

異常

  • 基本保證 − 如果丟擲異常,則流處於有效狀態。

  • 如果函式失敗(設定 failbit 狀態標誌)並且 member exceptions 設定為對此狀態丟擲異常,則會丟擲一個成員型別 failure 的異常。

資料競爭

  • 修改 fstream 物件。

  • 併發訪問同一個流物件會導致資料競爭。

示例

以下示例說明了 fstream open 函式。

#include <fstream>

int main () {

   std::fstream fs;
   fs.open ("test.txt", std::fstream::in | std::fstream::out | std::fstream::app);

   fs << " more lorem ipsum";

   fs.close();

   return 0;
}
fstream.htm
廣告