MFC: E / S estándar
La biblioteca MFC proporciona su propia versión de procesamiento de archivos. Esto se hace a través de una clase llamada CStdioFile. La clase CStdioFile se deriva de CFile. Puede manejar la lectura y escritura de archivos de texto Unicode, así como archivos de texto ordinarios de varios bytes.
Aquí está la lista de constructores, que pueden inicializar un objeto CStdioFile:
CStdioFile();
CStdioFile(CAtlTransactionManager* pTM);
CStdioFile(FILE* pOpenStream);
CStdioFile(LPCTSTR lpszFileName, UINT nOpenFlags);
CStdioFile(LPCTSTR lpszFileName, UINT nOpenFlags, CAtlTransactionManager* pTM);
Aquí está la lista de métodos en CStdioFile:
No Señor. | Nombre y descripción |
---|---|
1 | Open Sobrecargado. Open está diseñado para usarse con el constructor CStdioFile predeterminado (Overrides CFile :: Open). |
2 | ReadString Lee una sola línea de texto. |
3 | Seek Coloca el puntero del archivo actual. |
4 | WriteString Escribe una sola línea de texto. |
Veamos de nuevo un ejemplo sencillo creando una nueva aplicación basada en cuadros de diálogo MFC.
Step 1 - Arrastre un control de edición y dos botones como se muestra en la siguiente instantánea.
Step 2 - Agregar variable de valor m_strEditCtrl para el control de edición.
Step 3 - Agregue un controlador de eventos de clic para los botones Abrir y Guardar.
Step 4 - Aquí está la implementación de controladores de eventos.
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 - Cuando se compile y ejecute el código anterior, verá el siguiente resultado.
Step 6- Escribe algo y haz clic en Guardar. Guardará los datos en un archivo * .txt.
Step 7 - Si observa la ubicación del archivo, verá que contiene el archivo test.txt.
Step 8- Ahora, cierra la aplicación. Ejecute la misma aplicación. Al hacer clic en Abrir, el mismo texto se carga nuevamente.
Step 9 - Comienza abriendo el archivo, leyendo el archivo y luego actualizando el Control de edición.