對檔案進行讀取操作,需要包含fstream標頭檔案:
一、開啟乙個供輸出的檔案
#include
為了開啟乙個可供輸出的檔案,定義乙個ofstream(供輸出用的file stream)物件,並將檔名傳入:
//以輸出模式開啟「d:\\001.txt」
ofdtream outfile
("d:\\001.txt"
);
宣告outfile的過程中:
1.如果指定的檔案(d:\001.txt)不存在,會產生乙個新檔案並開啟供輸出使用。
2.如果指定的檔案存在,這個檔案會被開啟並用於輸出,檔案中原有的資料會被丟棄。
//以追加模式開啟001.txt
//新資料會被追加在檔案末尾
ofstream outfile
("d:\\001.txt"
;
二、開啟乙個供讀取的檔案要開啟乙個供讀取的檔案,定義乙個ifstream(供輸入的file stream)物件,並將檔名傳入:
//以讀取模式開啟infile
ifstream infile
("d:\\001.txt"
);
三、根據乙個練習題來實踐(用到陣列、vector、檔案的讀寫)
練習1.7使用你最稱手的工具,輸出兩行(或更多)文字並存檔。然後編寫乙個程式,開啟該文字檔案,將其中每個字都讀取到乙個vector物件中。遍歷該vector,將內容顯示到cout。然後利用泛型演算法sort(),對所有文字排序:再將排序後的結果輸出到另乙個檔案。
#include
sort
(container.
begin()
,container.
endl()
);
#include
#include
#include
#include
#include
//泛型演算法sort()需要的標頭檔案
intmain()
cout <<
"\n\n"
;//兩次換行排版
for(i =
0; i < user_names.
size()
; i++
)//遍歷vector輸出
sort
(user_names.
begin()
, user_names.
end())
;//利用泛型演算法sort()對5個字串排序
for(i =
0; i < user_names.
size()
; i++
)//迴圈遍歷vector,輸出排序後的5個字串
ofstream outfile
("d:\\change001.txt");
//開啟可供輸出的檔案「change001.txt".
//這裡沒有檔案,outfile會建立乙個新檔案:「change001.txt"if(
!outfile)
cout <<
"檔案開啟失敗!"
<< endl;
else
for(i =
0; i < user_names.
size()
; i++
)//遍歷5個字串,逐個寫入新檔案
ifstream infile
("d:\\change001.txt");
//再次開啟新檔案檢視if(
!infile)
cout <<
"檔案開啟失敗!"
<< endl;
else
}return0;
}
執行結果:
開啟修改後的檔案檢視:
這裡為了深刻的認ofstream,試著修改新產生的檔案"change001.txt"
然後再次執行程式。看看新檔案的舊值是否會被丟棄。
可以看到再次執行後,之前的內容被丟棄。每執行一次,新檔案的時間戳都會被改變一次。這說明每一次都會捨棄之前的內容
執行結果:
可以看到,第一次執行程式所寫入的字串沒有被捨棄
第一章練習
1.用student使用者登陸系統圖形介面 2.開啟乙個bash 3.修改student的密碼,把密碼更新成 t3st1ngtlme 主機字母和數字 4.顯示當前系統時間 root localhost desktop date 5.顯示當前系統時間,顯示格式為 小時 分鐘 秒 am pm am pm...
python第一章筆記 第一章 基礎
參與除法的兩個數中有乙個數為浮點數,結果也為浮點數 如 1.0 2,1 2.0,1.0 2.0 python print 1.0 2 結果 0.5 print 1 2.0 結果 0.5 print 1.0 2.0 結果 0.5 整數 整數,計算結果的小數部分被截除,只保留整數部分 不會四捨五入 如 ...
C程式語言 練習 第一章
練習1 3 修改溫度轉行程式,使之能在轉換表的頂部列印乙個標題。include 當fahr 0,20,300時,分別 列印華氏溫度和攝氏溫度對照表 main getch 練習1 4 編寫乙個程式列印攝氏溫度轉換為相應華氏溫度的轉換表。include main getch 練習1 5 修改溫度轉換程式...