Zastąp do określonej linii w c
Mam plik około 2000 wierszy tekstu, który generuję w swoim programie, każda linia ma informacje o pracowniku i jest wyprowadzana w ten sposób
1 1 Isaac Fonseca 58 c 1600 1310,40 6 1 0,22 2164,80 1
2 1 Manuel Gutierrez 22 d 1700 1523,37 4 1 0,13 897,26 1
3 1 Daniel Bernal 34 c 1600 1195,84 2 1 0,26 836,16 1
4 1 Miguel Gonzalez 43 e 1800 1195.84 0 1 0,15 0,00 1
Ale zawsze, gdy edytuję informacje o pracownikach, muszę zaktualizować plik, co robię, szukam linii i próbuję ją przepisać
Widziałem następujące pytanie kogoś z tym samym problemem, ale kiedy próbuję napisać do pliku, zawsze zapisuje na końcu pliku
nadpisać konkretną linię w pliku tekstowym?
Oto mój kod:
datos = fopen(archivo,"a+");
for(i=0;i<num;i++){
// buscar la linea
fgets(lineaA,100,datos);
// sobreescribir
if(i == (num-1))
cursor = ftell(datos);
}
cursor -= strlen(lineaA) - 1;
fseek(datos,cursor,SEEK_CUR);
fputs(linea2,datos);
fclose(datos);