Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Object Pascal: кроссплатформенные технологии > Работа с текстовыми файлами в Турбо Паскале 7.0


Автор: Neo007 21.3.2006, 21:36
такое дело...
имеються два текст файла, нужно записать данные в один из них и потом эти данные перенести во второй файл и если строки идущие друг за другом в этом файле одинаковы то вставить слово 'copy';
например:
файл1: - то файл2:
слон--------------------слон
лом---------------------лом
лом---------------------copy
муха---------------------лом
--------------------------муха

перенести данные не состовляет проблен но вот как вставить copy я не знаю...
подскажите .

Автор: darkart 21.3.2006, 23:44
Если правильно понял, то вот...
Код

program TxtCopy;
procedure CopyTxtFile(strFileNameIn,strFileNameOut:string);
const
  txt='copy';{вставляемая строка}
var
  strPred,strNow:string;{strPred-предыдущая строка, strNow-настоящая}
  fin,fout:text;
begin
  Assign(fin,strFileNameIn);
  Assign(fout,strFileNameOut);
  reset(fin);{для чтения}
  rewrite(fout);{для перезаписи}
  if not eof(fin) then{если не конец файла}
  begin
    readln(fin,strNow);{читаем первую строку}
    writeln(fout,strNow);{печатаем первую строку}
    while not eof(fin) do{пока не конец файла}
    begin
      strPred:=strNow;{запоминаем предыдущее слово}
      readln(fin,strNow);{читаем настоящее}
      if strPred=strNow then writeln(fout,txt);{если они равны то печатаем вставляемую строку}
      writeln(fout,strNow);{печатаем считанную строку}
    end;
  end;
  Close(fout);{закрытие файла}
  Close(fin);{закрытие файла}
end;
var
  strFileNameIn,strFileNameOut:string;
begin
  writeln('First file name:');
  readln(strFileNameIn);{ввод имени файла источника}
  writeln('Second file name:');
  readln(strFileNameOut);{ввод имени файла приемника}
  CopyTxtFile(strFileNameIn,strFileNameOut);
  writeln('ok');
  writeln('Please press any key...');
  readln;
end.

Автор: Neo007 21.3.2006, 23:54
smile Спасибо именно так. Во теперь буду знать как это делать...оказываеться надо через процедуру делать а я лепил всё в одно ... smile в конце концов запутывался .
Так сейчас мы её модернизируем немного smile и будет неплохая програмка .
Ещё раз спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)