Nome da função : fseek
Arquivo de cabeçalho : <stdio.h>
Protótipo de função : int fseek(FILE *stream, deslocamento longo, int fromwhere);
Função: Realoque o ponteiro do arquivo no fluxo para realocar a posição da estrutura do arquivo no fluxo. fseek define o ponteiro do arquivo associado ao stream stream para uma nova posição, deslocando bytes da posição do arquivo fornecida por fromwhere.
Parâmetros : FILE *stream o stream a ser realocado
compensação de deslocamento longo de realocação
int de onde o local da realocação
Valor de retorno : 0 em caso de sucesso, diferente de 0 em caso de erro ou falha.
Suplemento : O valor de fromwhere deve ser 0, um de 1 ou 2 respectivamente representa as três constantes simbólicas definidas em stdio.h:
0 é SEEK_SET, que é a posição inicial do arquivo;
1 é SEEK_CUR, que é a posição atual do ponteiro;
Às 2 horas SEEK_END é o fim do arquivo.
Depois que fseek é chamado, a próxima operação no local do arquivo atualizado pode ser inserida e também pode ser gerada.
Exemplo de programa: abra o arquivo, insira a string no fluxo do arquivo, realoque-a para o início do arquivo e produza o comprimento do arquivo
#include<stdio.h>longfilesize(FILE*stream);intmain(void){FILE*stream=fopen(myfile.txt,w+);fprintf(stream,www.dotcpp.com);fseek(stream,0,SEEK_END );printf(Filesizeofmyfile.txtis%ldbytesn,ftell(stream));fclose(stream);return0;}
Resultados em execução
Tamanho do arquivodomeuarquivo.txté14bytes