English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Biblioteca Padrão do C - <stdio.h>
Função da biblioteca C int fsetpos(FILE *stream, const fpos_t *pos) Define o fluxo dado stream A posição do arquivo é definida para a posição fornecida. Parâmetro pos é a posição fornecida pela função fgetpos.
A seguir está a declaração da função fsetpos().
int fsetpos(FILE *stream, const fpos_t *pos)
Se bem-sucedido, a função retorna zero, caso contrário, retorna um valor não nulo e define a variável global errno Para um valor positivo, este valor pode ser explicado por perror.
O exemplo a seguir demonstra o uso da função fsetpos().
#include <stdio.h> int main () { FILE *fp; fpos_t position; fp = fopen("file.txt","w+"); fgetpos(fp, &position); fputs("Olá, Mundo!", fp); fsetpos(fp, &position); fputs("Isso cobrirá o conteúdo anterior", fp); fclose(fp); return(0); }
Vamos compilar e executar o programa acima, isso criará um arquivo file.txtSeu conteúdo é o seguinte. Primeiro usamos fgetpos() A função para obter a posição inicial do arquivo, em seguida, escrevemos no arquivo Olá, Mundo!E, em seguida, usamos fsetpos() A função para resetar o ponteiro de escrita para o início do arquivo, reescrevendo o arquivo com o seguinte conteúdo:
Isso cobrirá o conteúdo anterior
Agora vamos usar o seguinte programa para ver o conteúdo do arquivo acima:
#include <stdio.h> int main () { FILE *fp; int c; fp = fopen("file.txt","r"); while(1) { c = fgetc(fp); if( feof(fp) ) { break ; } printf("%c", c); } fclose(fp); return(0); }