Posiciona o ponteiro do arquivo para as próximas operações de leitura ou gravação.
Sintaxe
FSeek( < nHandle >, < nOffSet >, [ nOrigem ] )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
nHandle | numérico | Indica o manipulador do arquivo obtido através das funções FCreate() e FOpen. | X |
|
nOffSet | numérico | Indica o número de bytes que o ponteiro de arquivo será movido a partir da posição definida no parâmetro nOrigem . Esse número pode ser positivo, negativo ou zero, dependendo da direção na qual o ponteiro será movido. | X |
|
nOrigem | numérico | Define a posição de origem no arquivo, para movimentar o ponteiro de acordo com o parâmetro nOffSet, se nOrigem for o final do arquivo, nOffSet deve ser negativo ou zero. |
|
|
Retorno
Nome | Tipo | Descrição |
---|---|---|
nRet | numérico | Retorna a nova posição do ponteiro de arquivo, com relação ao início do arquivo (posição 0), na forma de um valor numérico inteiro. Este valor não considera a posição original do ponteiro de arquivos antes da execução da função FSeek(). |
Observações
As movimentações dos ponteiros são relativas ao parâmetro nOrigem, que pode ter os valores definidos no arquivo header fileio.ch.
Tabela - Origem de movimentação do ponteiro
Origem | Constante | Operação |
0 | FS_SET | Ajusta a partir do início do arquivo. (Padrão) |
1 | FS_RELATIVE | Ajuste relativo a posição atual do arquivo. |
2 | FS_END | Ajuste a partir do final do arquivo. |
Exemplos
#include 'fileio.ch'... User Function exemplo() IF (nHandle := FOPEN("c:\garbage\test.txt")) >= 0 // Posiciona no fim do arquivo, retornando o tamanho do mesmo nLength := FSEEK(nHandle, 0, FS_END) // Posiciona no início do arquivo FSEEK(nHandle, 0) // Fecha arquivo FCLOSE(nHandle) ELSE MsgStop( "File open error" ) ENDIF Return