從檔案中讀資料用ifstream
,比如:
#include <iostream>
#include <fstream>
int main(){
std::string file_name = "path/filename.txt";
std::ifstream i_f_stream(file_name); // 申請資源建立i_f_stream控制代碼
if(!i_f_stream){ // 路徑或檔名不對
std::cerr << "file open error" << std::endl;
exit(-1);
}
std::string line; // 讀取的內容暫存到line中
std::vector<std::string> file_vector; // 用vector按行儲存
while(std::getline(i_f_stream, line)) // 一直讀到EOF
file_vector.push_back(line);
i_f_stream.close(); // 用完後需釋放資源
}
將資料寫入檔案用ofstream
,比如:
#include <iostream>
#include <fstream>
int main(){
std::string file_name = "path/filename_txt";
std::ofstream o_f_stream(file_name); // 申請資源,建立ofstream的控制代碼
//若path不對,則建立失敗,path對,ofstream會清空filename.txt的內容,
//並開啟filename.txt,若不存在則建立filename.txt
if(!o_f_stream){
std::cerr << "file open error" << std::endl;
exit(-1);
}
for(int i = 0; i < 100; ++i){
o_f_stream << "hello";
o_f_stream << i;
o_f_stream << std::endl;
}
o_f_stream.close(); // 釋放資源
return 0;
}