S
Shouldercannon
Есть файл, в котором есть данные вида
--->---
Понедельник (2012-07-21 21:51:13)
Заметки
---<---
Вторник (2012-07-22 00:44:49)
Заметки
Заметки
Заметки
--->---
Среда (2012-07-22 11:31:18)
Заметки
---<---
Четверг (2012-07-22 12:55:59)
--->---
Пятница (2012-12-03 16:38:24)
где --->--- исходящий, ---<--- входящий
Всё это загружается в StringList.
Так парсю
Получаю
Понедельник (2012-07-21 21:51:13)
Заметки
Вторник (2012-07-22 00:44:49)
Заметки
Заметки
Заметки
Среда (2012-07-22 11:31:18)
Заметки
Четверг (2012-07-22 12:55:59)
Пятница (2012-12-03 16:38:24)
Есть проблема. Нужно, чтобы после --->--- или ---<--- первая строка всегда добавлялась через процедуру обрабоки A, а все последующие до следующего разделителя --->--- или ---<---, или конца содержимого StringList, если нет больше разделителей через процедуру обработки B?
--->---
Понедельник (2012-07-21 21:51:13)
Заметки
---<---
Вторник (2012-07-22 00:44:49)
Заметки
Заметки
Заметки
--->---
Среда (2012-07-22 11:31:18)
Заметки
---<---
Четверг (2012-07-22 12:55:59)
--->---
Пятница (2012-12-03 16:38:24)
где --->--- исходящий, ---<--- входящий
Всё это загружается в StringList.
Так парсю
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
sl: tstringlist;
i: integer;
begin
sl := tstringlist.Create;
sl.LoadFromFile('in.txt');
i := 0;
with RichEdit1 do
begin
Clear;
Lines.BeginUpdate;
while i < sl.Count do
begin
if sl[i] = '--->---' then
SelAttributes.Color := clred
else if sl[i] = '---<---' then
SelAttributes.Color := clgreen
else
begin
Lines.Add(sl[i]);
SelAttributes.Color := clblack;
end;
inc(i);
end;
Lines.EndUpdate;
end;
sl.Free;
end;
Получаю
Понедельник (2012-07-21 21:51:13)
Заметки
Вторник (2012-07-22 00:44:49)
Заметки
Заметки
Заметки
Среда (2012-07-22 11:31:18)
Заметки
Четверг (2012-07-22 12:55:59)
Пятница (2012-12-03 16:38:24)
Есть проблема. Нужно, чтобы после --->--- или ---<--- первая строка всегда добавлялась через процедуру обрабоки A, а все последующие до следующего разделителя --->--- или ---<---, или конца содержимого StringList, если нет больше разделителей через процедуру обработки B?