C++ 文件

C++ 文件

fstream 库让我们可以处理文件。

要使用 fstream 库,请包括标准的 <iostream><fstream> 头文件:

实例
  1. #include <iostream>
  2. #include <fstream>

fstream 库中包含三个类,用于创建、写入或读取文件:

描述
ofstream创建并写入文件
ifstream读取文件
fstreamofstream 与 ifstream 组合: 创建、读取和写入文件

创建并写入文件

要创建文件,请使用 ofstreamfstream 类,并指定文件名。要写入文件,请使用插入运算符(<<

实例
  1. #include <iostream>
  2. #include <fstream>
  3. using namespace std;
  4. int main() {
  5. // Create and open a text file
  6. ofstream MyFile("filename.txt");
  7. // Write to the file
  8. MyFile << "Files can be tricky, but it is fun enough!";
  9. // Close the file
  10. MyFile.close();
  11. }

我们为什么要关闭文件?

这被认为是良好的习惯,它可以清理不必要的内存空间。

读取文件

要读取文件,请使用 ifstreamfstream 类以及文件名。

注意,我们还使用 while 循环和 getline() 函数(属于 ifstream 类)逐行读取文件,并打印文件内容:

实例
  1. #include <iostream>
  2. #include <fstream>
  3. #include <string>
  4. using namespace std;
  5. int main () {
  6. // Create a text file
  7. ofstream MyWriteFile("filename.txt");
  8. // Write to the file
  9. MyWriteFile << "Files can be tricky, but it is fun enough!";
  10. // Close the file
  11. MyWriteFile.close();
  12. // Create a text string, which is used to output the text file
  13. string myText;
  14. // Read from the text file
  15. ifstream MyReadFile("filename.txt");
  16. // Use a while loop together with the getline() function to read the file line by line
  17. while (getline (MyReadFile, myText)) {
  18. // Output the text from the file
  19. cout << myText;
  20. }
  21. // Close the file
  22. MyReadFile.close();
  23. }