Skip to content

Tự học C++ - Module 9: Xử lý Tệp và Ngoại lệ

TuanNDA
Published date:
Edit this post

Table of contents

Open Table of contents

1. Làm việc với Tệp (Files)

Thư viện fstream cung cấp các lớp để làm việc với tệp:

Ghi vào tệp:

#include <iostream>
#include <fstream>
using namespace std;

int main() {
  // Tạo và mở tệp
  ofstream MyFile("test.txt");

  // Ghi nội dung
  MyFile << "Lớp học C++ của TuanNDA.dev thật tuyệt!";

  // Đóng tệp
  MyFile.close();
}

Đọc từ tệp:

Chúng ta thường dùng vòng lặp while kết hợp hàm getline() để đọc từng dòng.

string myText;
ifstream MyReadFile("test.txt");

while (getline (MyReadFile, myText)) {
  cout << myText; // In từng dòng ra màn hình
}

MyReadFile.close();

2. Xử lý Ngoại lệ (Exceptions)

Ngoại lệ là những lỗi xảy ra trong quá trình chạy chương trình (như nhập sai dữ liệu, chia cho 0, tệp không tồn tại). Để chương trình không bị tắt đột ngột, chúng ta dùng bộ ba: try, throw, catch.

Ví dụ kiểm tra tuổi:

try {
  int age = 15;
  if (age >= 18) {
    cout << "Quyền truy cập được chấp nhận.";
  } else {
    throw (505); // Ném ra mã lỗi 505
  }
}
catch (int myNum) {
  cout << "Truy cập bị từ chối! \n";
  cout << "Mã lỗi: " << myNum;
}

Catch mọi loại lỗi:

Nếu bạn không biết chắc kiểu dữ liệu của lỗi sẽ là gì, hãy dùng dấu ba chấm ....

catch (...) {
  cout << "Đã có lỗi xảy ra nhưng không rõ nguyên nhân.";
}

Lời kết Module 9

Xử lý tệp và ngoại lệ giúp chương trình của bạn “lớn” hơn, chuyên nghiệp hơn và chịu lỗi tốt hơn. Đây là những kỹ năng không thể thiếu khi làm dự án thực tế.

Chúng ta chỉ còn một Module cuối cùng! Trong Module 10, chúng ta sẽ tổng hợp lại tất cả kiến thức qua một Dự án thực tế (Project) và hướng dẫn các bước tiếp theo trên con đường lập trình C++.

Hẹn gặp lại các bạn!

Previous
Tự học C++ - Module 10: Dự án tổng kết và Con đường phía trước
Next
Tự học C++ - Module 8: Các trụ cột của OOP