Показать сообщение отдельно
  #1  
Старый 23.08.2009, 21:23
Dmitry-84 Dmitry-84 вне форума
Прохожий
 
Регистрация: 23.08.2009
Сообщения: 2
Репутация: 10
По умолчанию пустые файлы

Подскажите пожалуйста в чём ошибка . программа на дельфи строк 15

Программа принимаем на вход текстовый файл типа

Текст1;

Текст2;

Текст3;

И должна делать много фиалов. 1.txt должен содержать ”Текст1;” 2.txt должен содержать ”Текст2;” 3.txt должен содержать ”Текст3;” Выходных файлов может быть любое количество

У меня 1.txt создаются нормально, остальные файлы тоже создаются, но пустые.

Код:
procedure TMainForm.Button1Click(Sender: TObject);
var InputFile:TextFile;
    OutputFile:TextFile;
    str, BeginS:string;
    i:integer;
    OpenFile : Boolean;
begin
i:=0;
OpenFile :=false;
AssignFile(InputFile,'InputFile.txt');
reset(InputFile);
while not(Eof(InputFile)) do
 begin
 inc(i);
 if OpenFile then
    begin
      CloseFile(OutputFile);
    end;
 AssignFile(OutputFile, IntToStr(i) + '.txt');//имя выходного файла
 OpenFile:=true;
 Rewrite(OutputFile);
    while true do
    begin
      ReadLn(InputFile, str);   // Чтение и отображение одного символа
      if pos(';',str)=0 then
        WRiteln(OutputFile, str)
           else
             begin
              beginS:=Copy(str,1, pos(';',str));
              WRiteln(OutputFile, beginS);
              break;
             end;
      if  Eof(InputFile) then  break;
    end;
 end ;

  // Закрываем файл в последний раз
  CloseFile(InputFile);
end;
Admin: Учимся пользоваться тегами.
Ответить с цитированием