
28.03.2008, 22:32
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 904
С нами:
9655526
Репутация:
1821
|
|
Сообщение от Twiddle
Подскажите плз как изменить что бы не было повторов в найденом? ВОт код:
Код:
procedure poisk;
var S, Q: TStrings;
I, J: Integer;
begin
S := TStringList.Create;
Q := TStringList.Create;
S.LoadFromFile('C:\bla-bla.txt');
I := 0;
J := 0;
while I<S.Count-1 do
begin
if Pos('string 1', S.Strings[I])<>0 then
begin
Q.Add(S.Strings[I]);
Inc(I);
Inc(J);
Q.Add(S.Strings[I]);
Q.Add('');
end;
Inc(I);
end;
if J>0 then
begin
Q.Insert(0, '');
Q.Insert(0, DateToStr(Now));
Q.Insert(0, 'Naydenno '+IntToStr(J)+' strok');
Q.SaveToFile('c:\result.txt');
end;
S.Free;
Q.Free;
end;
Зачем так - он у тебя последнюю строку не проверит!
пиши так
или А что бы в result.txt не было повторов
сделай повторный поиск поэтому файлу 
===============================
Код:
procedure poisk;
var SL,Ish: TStringList;
i:integer;
begin
ISH:=TstringList.Create;
ISH.LoadFromFile('d1.txt');
SL := TStringList.Create;
with SL do
try
Sorted := True;
For i:=0 to ISH.Count-1 Do Begin
SL.Add(ISH[i]);
end;
Duplicates := dupIgnore;
sl.SaveToFile('result.txt');
finally
Free;
end;
end;
-----------------------------
Удаляет все дубликаты и сохраняет в result.txt
А чего ты именно хочешь?()
Вывести сколько раз в файле встречается строка String 1?
Последний раз редактировалось De-visible; 29.03.2008 в 01:13..
|
|
|