MFC - I / O tiêu chuẩn

Thư viện MFC cung cấp phiên bản xử lý tệp của riêng nó. Điều này được thực hiện thông qua một lớp có tên CStdioFile. Lớp CStdioFile có nguồn gốc từ CFile. Nó có thể xử lý việc đọc và ghi các tệp văn bản Unicode cũng như các tệp văn bản nhiều byte thông thường.

Đây là danh sách các hàm tạo, có thể khởi tạo đối tượng CStdioFile -

CStdioFile();
CStdioFile(CAtlTransactionManager* pTM);
CStdioFile(FILE* pOpenStream);
CStdioFile(LPCTSTR lpszFileName, UINT nOpenFlags);
CStdioFile(LPCTSTR lpszFileName, UINT nOpenFlags, CAtlTransactionManager* pTM);

Đây là danh sách các phương thức trong CStdioFile -

Sr.No. Tên & Mô tả
1

Open

Quá tải. Open được thiết kế để sử dụng với hàm tạo CStdioFile mặc định (Ghi đè CFile :: Open).

2

ReadString

Đọc một dòng văn bản.

3

Seek

Định vị con trỏ tệp hiện tại.

4

WriteString

Viết một dòng văn bản.

Chúng ta hãy xem xét lại một ví dụ đơn giản bằng cách tạo một ứng dụng dựa trên hộp thoại MFC mới.

Step 1 - Kéo một điều khiển chỉnh sửa và hai nút như thể hiện trong ảnh chụp nhanh sau đây.

Step 2 - Thêm biến giá trị m_strEditCtrl để kiểm soát chỉnh sửa.

Step 3 - Thêm trình xử lý sự kiện nhấp chuột cho các nút Mở và Lưu.

Step 4 - Đây là việc thực hiện các trình xử lý sự kiện.

void CMFCStandardIODlg::OnBnClickedButtonOpen() {
   
   // TODO: Add your control notification handler code here
   UpdateData(TRUE);

   CStdioFile file;
   file.Open(L"D:\\MFCDirectoryDEMO\\test.txt", CFile::modeRead | CFile::typeText);
   
   file.ReadString(m_strEditCtrl);
   file.Close();
   UpdateData(FALSE);
}

void CMFCStandardIODlg::OnBnClickedButtonSave() {
   
   // TODO: Add your control notification handler code here
   UpdateData(TRUE);
   CStdioFile file;
   if (m_strEditCtrl.GetLength() == 0) {

      AfxMessageBox(L"You must specify the text.");
      return;
   }
   file.Open(L"D:\\MFCDirectoryDEMO\\test.txt", CFile::modeCreate |
      CFile::modeWrite | CFile::typeText);
   file.WriteString(m_strEditCtrl);
   file.Close();
}

Step 5 - Khi đoạn mã trên được biên dịch và thực thi, bạn sẽ thấy kết quả như sau.

Step 6- Viết một cái gì đó và nhấp vào Lưu. Nó sẽ lưu dữ liệu trong tệp * .txt.

Step 7 - Nếu bạn nhìn vào vị trí của tệp, bạn sẽ thấy rằng nó chứa tệp test.txt.

Step 8- Bây giờ, đóng ứng dụng. Chạy cùng một ứng dụng. Khi bạn nhấp vào Mở, cùng một văn bản sẽ tải lại.

Step 9 - Nó bắt đầu bằng cách mở tệp, đọc tệp, tiếp theo là cập nhật Điều khiển chỉnh sửa.