【小白学习C++ 教程】十八、C++ 中文件处理
@Author:Runsen
在C++中,文件主要通過使用fstream頭文件中的fstream、ifstream、ofstream三個類來處理。
- ofstream:在文件上寫入的流類
- ifstream:從文件讀取的 流類
- fstream:從/向文件讀取和寫入的流類。
在 C++ 文件處理中支持以下操作:
- 打開文件
- 關閉文件
- 從文件中讀取
- 寫入文件
打開文件
| ios::in | 以輸入模式打開文件進行讀取。 |
| ios::out | 以輸出模式打開文件以將數據寫入文件 |
| ios::ate | 在文件末尾設置初始位置。如果未設置文件結束標志,則初始位置設置為文件的開頭。 |
| ios::app | 如果文件被打開用于寫入并且已經有內容,則內容將被截斷 |
| ios::trunc | 以追加模式打開文件,以便將所有內容追加到文件末尾。 |
| ios::binary | 以二進制模式打開文件。 |
例如,如果我們要打開一個文件“myfile.dat”以二進制方式追加數據,那么我們可以編寫如下代碼。
ofstream myfile; myfile.open(“myfile.dat”, ios::out|ios::app|ios::binary);注意: 文件打開方式可以配合使用,利用|操作符
關閉文件
當我們完成對文件的輸入和輸出操作時,我們可以使用 close 函數來關閉文件并釋放文件所持有的資源。
因此,當我們完成對上述文件 myfile 的操作后,我們可以關閉該文件,如下所示:
myfile.close();一旦使用 close 函數關閉文件,關聯的文件對象就可以重新用于打開另一個文件。
從文件中寫入
我們還可以使用文件操作將數據寫入文件。我們用來將數據寫入文件的運算符是流插入運算符 (<<)。這與我們使用 cout 將數據打印到標準輸出設備的操作符相同。兩者之間的區別在于,對于文件相關的寫入,我們使用 ofstream 或 fstream 對象。
寫入文件步驟如下:
包含頭文件
#include <fstream>
創建流對象
fstream ofs;
打開文件
ofs.open(“文件路徑”,打開方式);
寫數據
ofs << “寫入的數據”;
關閉文件
ofs.close();
從文件中讀取
我們可以使用流提取運算符 (>>) 從文件中逐行讀取信息。這類似于使用 cin 從標準輸入讀取輸入。唯一的區別是在文件的情況下,使用 ifstream 或 fstream 對象而不是 cin。
#include <fstream> #include<iostream> #include <string>using namespace std;int main() {fstream fs;fs.open("demo.txt", ios::in);if (!fs.is_open()){cout << "文件打開失敗" << endl;return;}string buf;while (getline(fs, buf)){cout << buf << endl;}fs.close();return 0; }總結
以上是生活随笔為你收集整理的【小白学习C++ 教程】十八、C++ 中文件处理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 音视频通话质量哪个品牌做的更好?
- 下一篇: s3c2440移植MQTT