C++ 簡單的檔案輸入/輸出
~必須包含標頭檔案iostream
~標頭檔案iostream定義了一個用處理輸出的ostream類
~標頭檔案iostream聲明瞭一個名為cout的ostream變數(物件)
~必須指明名稱空間std;例如,為引用元素cout和endl,必須使用編譯指令using或字首std::
~可以結合使用cout和運算子<<來顯示各種型別的資料
檔案輸出與此極為相似
~必須包含標頭檔案fstream
~標頭檔案fstream定義了一個用於處理輸出的ostream類
~需要宣告一個或多個ofstream變數(物件),並以自己喜歡的方式對其進行命名,條件是遵守常用的命名規則。
~必須指明名稱空間std;例如,為引用元素ofstream,必須使用編譯指令using或字首std::。
~需要將ofstream物件與檔案關聯起來。為此,方法之一是使用open()方法。
~使用完檔案後,應使用方法close()將其關閉。
~可結合使用ofstream物件和運算子<<來輸出各種型別的資料。
注意,雖然標頭檔案iostream提供了一個預先定義好的名為cout的ostream物件,但您必須宣告自己的ofstream物件,為其命名,並將其同文件關聯起來。下面演示瞭如何宣告這種物件:
ofstream outfile;
ofstream fout;
下面演示瞭如何將這種物件與特定的檔案關聯起來:
outfile.open("fish.txt");
char filename[50];
cin >> filename;
fout.open(filename);
注意,方法open()接受一個C-風格字串作為引數,這可以是一個字面字串,也可以是儲存在陣列中的字串。
下面演示瞭如何使用這種物件:
cout 控制檯輸出
- 包含標頭檔案 iostream
- 標頭檔案 iostream 定義了一個 ostream 類用於處理輸出
- 標頭檔案 iostream 聲明瞭一個名為 cout 的 ostream 物件
- 指明名稱空間 std
- 可以結合使用cout和運算子<<來顯示各種型別的資料
文字檔案輸出(寫入到文字檔案)
- 包含檔案頭 fstream
- 標頭檔案 fstream 定義了一個ofstream 類用於處理輸出
- 宣告一個或多個 ofstream 物件,可以自由命名
- 指明名稱空間 std
- 把 3 中宣告的 ofstream 物件與檔案關聯起來,比如使用 open()方法
- 使用完檔案後,需要使用 close()方法將其關閉
- 還可以結合 ofstream 物件和運算子<<來輸出各種型別的資料
注意:cout 控制檯輸入輸出中,標頭檔案 iostream 聲明瞭一個名為 cout 的 ostream 物件,無需自己手動宣告;檔案輸出中,我們必須自己動手宣告一個 ofstream 物件,為其命名,將其同文件關聯起來。請看下面的例子:
#include<fstream> ofstream OutFile; //宣告一個 ofstream 物件
OutFile.open("study.txt"); //將OF與“study.txt”檔案關聯起來
例:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
char name[20];
double height;
double weight;
ofstream outFile;//建立了一個ofstream 物件
outFile.open("information.txt");//outFile 與一個文字檔案關聯
cout << "Enter name: ";
cin.getline(automobile, 20);
cout << "Enter height: ";
cin >> year;
cout << "Enter weight: ";
cin >> weight;
// cout 控制檯輸出前面輸入的資訊
cout << fixed;
cout.precision(2);
cout.setf(ios_base::showpoint);
cout << "Make and Model: " << automobile << endl;
cout << "Year: " << year << endl;
cout << "Was asking $" << a_price << endl;
cout << "Now asking $" << d_price << endl;
// outFile 把資訊寫入到文字檔案
outFile << fixed; //小數點格式顯示double
outFile.precision(2); //設定精度
outFile.setf(ios_base::showpoint); //強制顯示小數點後的零
outFile << "Name: " << name << endl;
outFile << "Height: " << height << endl;
outFile << "Weight: " << weight << endl;
outFile.close(); //使用完文字檔案後要用close()方法將其關閉
return 0;
}
C++中簡單的文字檔案輸入/輸出_francis_xd的部落格-CSDN部落格_c++文字檔案輸入輸出