{buffer [4000]; s1; * fp; kol, n, n1, i; s [40] = "Видалення інформації з файлу:";
if (filename [worktype] [0] == NULL) (30,3, "Помилка", "Робочий файл не заданий", 1); {((fp = fopen (filename [worktype], "r + b")) == NULL) (30,3, "Помилка", "Помилка відкриття файлу", 1);
else {(WHITE); (BLUE); (1,1,80,25, buffer); (); (s, filename [worktype]); (s); (worktype) { 0: {
showstatus ("Номер символу який необхідно видалити");
inputboxnum ("Введіть номер символу:", 25,12,30, n);
showstatus ("Кількість символів які необхідно видалити");
inputboxnum ("Кількість символів:", 25,12,30, n1);
char sbuf [symb_maxkol];
kol = 0;
while (! feof (fp))
sbuf [kol + +] = getc (fp);
freopen (filename [worktype], "wb", fp);
for (i = 0; i
if ((i n + n1-1)) putc (sbuf [i], fp);
break;
} 1: {
kol = 0;
tstring strs [str_maxkol];
while (! feof (fp))
fgets (strs [kol + +], str_maxlen, fp);
showstatus ("Номер рядка яку необхідно видалити");
inputboxnum ("Введіть номер рядка:", 25,12,30, n);
freopen (filename [worktype], "wb", fp);
for (i = 0; i
if (i! = n) fputs (strs [i], fp);
break;
} 2: {
kol = 0;
tblock block [block_maxkol];
while (! feof (fp))
fread (block [kol + +], block_size, 1, fp);
showstatus ("Номер блоку який необхідно видалити");
inputboxnum ("Введіть номер блоку", 25,12,30, n);
freopen (filename [worktype], "wb", fp);
for (i = 0; i
if (i! = n) fwrite (block [i], block_size, 1, fp);
break;
}
} (fp); ("Для продовження натисніть будь-яку клавішу ..."); (30,3, "Видалення даних", "Дані видалені");
puttext (1,1,80,25, buffer);
}
}
} clear ()
{* fp; (filename [worktype] [0] == NULL) (30,3, "Помилка", "Робочий файл не заданий", 1); {= fopen ( filename [worktype], "w + b"); (fp == NULL) (30,3, "Помилка", "Помилка відкриття файлу", 1); {(fp); ("Для продовження натисніть будь-яку клавішу ... "); (25,3," Очищення файлу "," Файл порожній ");
}