Partilhar via


Lendo e gravando arquivos

Se você usou as funções de manipulação arquivo de biblioteca de tempo de execução C, a leitura de MFC e as operações de gravação parecerão familiares. Este artigo descreve diretamente de ler e gravar diretamente a um objeto de CFile . Você também pode fazer o arquivo armazenado no buffer de E/S com a classe de CArchive .

Para ler e gravar no arquivo

  1. Use as funções de membro de Ler e de Gravar para ler e gravar dados no arquivo.

    - ou -

  2. A função de membro de Seek também está disponível para ir para um deslocamento específico dentro do arquivo.

Ler usa um ponteiro para um buffer e o número de bytes a serem lidos e retorna o número real de bytes que foi lido. Se o número de bytes exigido não pôde ser lido como participante (EOF) de Arquivo for atingido, o número real de bytes é retornado. Se qualquer erro de leitura, ocorre uma exceção será lançada. Gravar é semelhante a Ler, mas o número de bytes gravados não é retornado. Se um ocorrerem erros, incluindo a gravação de todos os bytes especificado, será lançada uma exceção. Se você tiver um objeto válido de CFile , você pode ler deles ser gravada nele conforme mostrado no seguinte exemplo:

TCHAR szBuffer[256]; 
UINT    nActual = 0; 
CFile   myFile;

if ( myFile.Open( _T("c:\\test\\myfile.dat"), CFile::modeCreate |   
   CFile::modeReadWrite ) )
{
   myFile.Write( szBuffer, sizeof( szBuffer ) ); 
   myFile.Flush();
   myFile.Seek( 0, CFile::begin );
   nActual = myFile.Read( szBuffer, sizeof( szBuffer ) ); 
}

Dica

Você normalmente deve realizar operações de entrada/saída dentro de um bloco de manipulação de exceção de try/catch .Para obter mais informações, consulte Manipulação de exceções (MFC).

Consulte também

Conceitos

Arquivos no MFC