Compartilhar via


CStdioFile::Seek

Reposiciona o ponteiro em um arquivo aberto anteriormente.

virtual ULONGLONG Seek(
   LONGLONG lOff,
   UINT nFrom 
);

Parâmetros

  • lOff
    Número de bytes para mover o ponteiro.

  • nFrom
    Modo de movimentação de ponteiro.Deve ser um dos seguintes valores:

    • CFile::begin: Mover os bytes de lOff do ponteiro do arquivo dianteiros do início do arquivo.

    • CFile::current: Mover os bytes de lOff do ponteiro do arquivo da posição atual no arquivo.

    • CFile::end: Mover os bytes de lOff do ponteiro do arquivo do final do arquivo.Observe que lOff deve ser negativo buscar no arquivo; existente os valores positivos buscarão após o final do arquivo.

Valor de retorno

Se a posição solicitada é legal, Seek retorna o novo deslocamento de bytes do início do arquivo.Caso contrário, o valor de retorno é indefinida e um objeto de CFileException é lançada.

Comentários

A função de Seek permite de acesso aleatório aos conteúdo de um arquivo movendo o ponteiro um determinar a quantidade especificada, ou relativamente.Nenhum dado é realmente lida durante a busca.Se a posição solicitada é maior do que o tamanho do arquivo, o tamanho do arquivo será estendido para essa posição, e nenhuma exceção será lançada.

Quando um arquivo é aberto, o ponteiro do arquivo está localizado no deslocamento 0, o início do arquivo.

Essa implementação de Seek é baseada em função fseekda biblioteca em tempo de execução (CRT).Há vários limites o uso de Seek em fluxos abertos no modo de texto.Para mais informações, consulte fseek, _fseeki64.

Exemplo

O exemplo a seguir mostra como usar Seek para mover o ponteiro 1000 bytes do início do arquivo de cfile .Observe que Seek não ler dados, portanto você deve chamar CStdioFile::ReadString posteriormente para ler dados.

CStdioFile cfile(_T("Stdio_Seek_File.dat"), CFile::modeWrite |
   CFile::modeCreate);
LONGLONG lOff = 1000;
ULONGLONG lActual = cfile.Seek(lOff, CFile::begin);

Requisitos

Cabeçalho: afx.h

Consulte também

Referência

Classe de CStdioFile

Gráfico de hierarquia

Classe de CFileException

CStdioFile::ReadString

CFile::Read