Тема: видалення
Як правильно видалити певний рядок(запис) з файлу, якщо я знаю
його номер?
void film_delete()
{
FILE *f;
FILE *p;
int k = 0;
int s;
printf("Введіть номер запису який потрібно видалити: "); scanf("%d", &s);
f = fopen(FName, "rb");
p = fopen("baza1.txt", "wb");
for(int i=0; i<file_element(); i++)
if (s != shop[i].id)
{
fwrite(&shop, sizeof(films), 1, p);
}
fclose(f);
fclose(p);
f = fopen(FName, "wb");
p = fopen("baza1.txt", "rb+");
while (fread(&shop, sizeof(films), 1, p))
{
fwrite(&shop, sizeof(films), 1, f);
}
fclose(f);
fclose(p);
}