меня интересует два типа вывода рандом
случайная строка и с разделителем
случайная строка
разделитель
Цитата:
#
текст
текст
#
текст
#
текст
текст
текст
#
|
Код:
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;
гружу файл запоминаю места разделителей и их число а затем рандомно выбираю разделитель и копирую строки от него и до следующего.
просто случайная строка
Код:
S:= TStringList.Create;
S.LoadFromFile(extractfilepath(paramstr(0))+'файл.txt');
a:=random(s.Count);
Result:=xtazkont.Strings[a];
ну тут все просто...
так вот хотел бы узнать как можно это сделать иначе, так как посылается команда с именем файла и надо сразу все это сделать, но это нормально если файл маленький а вот если там 10мб...