Показать сообщение отдельно
  #6  
Старый 13.01.2012, 22:49
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Файл становится известен, когда нужно получить ответ? Ну так и делать. В момент, когда нужно получить ответ, построчно прочитать файл, узнать кол-во разделителей и заодно их позиции, получить рандом, и построчно считать с позиции нужного разделителя до следующего. Вообщем на месте этого кода:
Код:
N:= -1;
S:= TStringList.Create;
S.LoadFromFile(extractfilepath(paramstr(0))+'файл.txt');
listS:=TStringList.Create;
for i:=0 to S.Count-1 do
      if(S.Strings[i] = '#') then
       begin
        inc(N);
        listS.Add(inttostr(I));
        end;
k:=random(N);
for i:=(strToint(listSpam.Strings[k])+1) to (strToint(listSpam.Strings[k+1])-1) do
result:=result+spamS.Strings[i]+#13#10;
__________________
jmp $ ; Happy End!
The Cake Is A Lie.
Ответить с цитированием