Информационный сервер для программистов: Исходники со всего света. Паскальные исходники со всего света
  Powered by Поисковый сервер Яndex: Найдется ВСЁ!
На Главную Pascal Форум Информер Страны мира
   ЧАВО - Частые Вопросы и Ответы    >>    insstr
   
 
 FIL. Как вставить/удалить строку внутри файла   Sly Golovanov 27.12.1997

Можно ли вставить произвольный текст внутрь файла, раздвинув его.


 
 

Pascal FAQ created by SLY Golovanov, 2:5020/278.13 (slightly corrected by Valery Votintsev 2:5021/22) ============================================================================== Q:> А можно записать в середину текстового файл строку произвольной длины, но чтобы остальные строки остались, как были, или удалить одну строку из середины? A: Просто так - нет. Есть два варианта. Простой: открываете второй файл, читаете строки из первого, пишете строки во второй, пропуская то, что не нужно, или дополняя в нужных местах. Сложный: открываете файл, как бинарный, составляете список длин строк, и копируете куски файла в другой с помощью BlockRead/BlockWrite. {пример для простого варианта} var f1,f2: text; s: string; const ourstring = 'ДЬВ'; {искомая стpока} begin assign(f1,'c:\a.txt'); assign(f2,'c:\b.txt'); reset(f1); rewrite(f2); while not eof(f1) do begin readln(f1,s); if pos(ourstring,s)<>0 then continue; {пропустить строку, если найдено} writeln(f2,s); end; close(f1); close(f2); end. --- * Origin: (2:5020/794.13)