MFC - Standart G / Ç

MFC kitaplığı kendi dosya işleme sürümünü sağlar. Bu, CStdioFile adlı bir sınıf aracılığıyla yapılır. CStdioFile sınıfı, CFile'dan türetilmiştir. Sıradan çok baytlı metin dosyalarının yanı sıra Unicode metin dosyalarının okunmasını ve yazılmasını da işleyebilir.

İşte bir CStdioFile nesnesini başlatabilen yapıcıların listesi -

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

İşte CStdioFile'daki yöntemlerin listesi -

Sr.No. İsim & Açıklama
1

Open

Aşırı yüklenmiş. Open, varsayılan CStdioFile yapıcısı (CFile :: Open'ı geçersiz kılar) ile kullanılmak üzere tasarlanmıştır.

2

ReadString

Tek bir metin satırını okur.

3

Seek

Mevcut dosya işaretçisini konumlandırır.

4

WriteString

Tek bir metin satırı yazar.

Yeni bir MFC diyalog tabanlı uygulama oluşturarak tekrar basit bir örneğe bakalım.

Step 1 - Aşağıdaki anlık görüntüde gösterildiği gibi bir düzenleme kontrolünü ve iki düğmeyi sürükleyin.

Step 2 - Değer değişkeni ekle m_strEditCtrl düzenleme kontrolü için.

Step 3 - Aç ve Kaydet düğmeleri için tıklama olay işleyicisi ekleyin.

Step 4 - İşte olay işleyicilerin uygulaması.

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 - Yukarıdaki kod derlendiğinde ve çalıştırıldığında, aşağıdaki çıktıyı göreceksiniz.

Step 6- Bir şeyler yazın ve Kaydet'i tıklayın. Verileri * .txt dosyasına kaydedecektir.

Step 7 - Dosyanın konumuna bakarsanız, test.txt dosyasını içerdiğini göreceksiniz.

Step 8- Şimdi uygulamayı kapatın. Aynı uygulamayı çalıştırın. Aç'ı tıkladığınızda, aynı metin yeniden yüklenir.

Step 9 - Dosyayı açarak, dosyayı okuyarak ve ardından Düzenleme Kontrolünü güncelleyerek başlar.