Lendo e gravando arquivos
Se você utilizou a biblioteca de time de execução C arquivo-funções de manipulação, MFC ler e gravar operações aparecerá familiar.Este artigo descreve leitura diretamente e gravar diretamente um CFile objeto. Você também pode fazer com buffer E/S de arquivos com o CArchive classe.
Ler e gravar no arquivo
Use o Leitura and Gravação funções de membro para ler e gravar dados no arquivo.
- ou -
The Seek função de membro também está disponível para mover para um deslocamento específico dentro do arquivo.
Leitura leva um ponteiro para um buffer e o número de bytes de leitura e retorna o número real de bytes que foram lidos.Se o número de bytes necessário não pôde ser lida porque o participante de arquivo (EOF) for atingido, o número real de bytes lidos é retornado.Se ocorrer qualquer erro de leitura, uma exceção é lançada.gravar é semelhante a Leitura, mas o número de bytes gravados não será retornado.Se ocorrer um erro de gravar, incluindo não gravando todos os bytes especificados, uma exceção é lançada.Se você tiver um válido CFile o objeto, você pode ler dele ou gravar nela sistema autônomo mostrado no exemplo a seguir:
TCHAR szBuffer[256];
UINT nActual = 0;
CFile myFile;
if ( myFile.Open( _T("c:\\test\\myfile.dat"), CFile::modeCreate |
CFile::modeReadWrite, NULL ) )
{
myFile.Write( szBuffer, sizeof( szBuffer ) );
myFile.Flush();
myFile.Seek( 0, CFile::begin );
nActual = myFile.Read( szBuffer, sizeof( szBuffer ) );
}
Observação: |
---|
Você normalmente deve executar operações de entrada/saída dentro de um Tente/catchBloco de tratamento de exceção de .Para obter mais informações, consulte (MFC) de manipulação de exceções. |