Форум: "Начинающим";
Текущий архив: 2007.07.15;
Скачать: [xml.tar.bz2];
ВнизДобрый вечер уважаемые мастера! Прошу помочь разобраться. Найти похожие ветки
← →
Delon (2007-06-21 18:51) [0]Есть у меня текстовый файл с огромной кучей строк. Вот одна из многих (пример). 2007:05:18-00:13:51 (none) exim[31310]: 2007-05-18 00:13:51 1HolQ7-000890-GW <= <> R=1HolQ7-00088t-9c U=exim P=local S=1823. Как мне вытащить из строки дату и время если в строке присутствует символ <=.
Вот код но не могу я в нем найти ошибку.
Var
str,date,str1:String;
k,i,d,c:integer;
begin
i:=0;
while (i<Memo1.Lines.Count) do
begin
str :=Memo1.Lines[i];
k:= Pos("=>",str);
if k > 0 then str1 := copy(str,k-37,19);
begin
date:=copy(Memo1.Lines[k],i-2,19);
memo1.Lines.CommaText:=date;
inc(c);
end;
inc(i);
end;
← →
гостъ (2007-06-21 18:53) [1]
> символ <=.
> k:= Pos("=>",str);
← →
Delon (2007-06-21 18:55) [2]а ну да. с символами перепутал, но все равно это не работает.
← →
гостъ (2007-06-21 19:03) [3]Впинду... это даже отформатированное читать забодаешься... :(
порукамлинейкой
var
str,date,str1:String;
k,i,d,c:integer;
begin
i:=0;
while (i<Memo1.Lines.Count) do
begin
str :=Memo1.Lines[i];
k:= Pos("=>",str);
if k > 0 then
str1 := copy(str,k-37,19);
begin // ???
date:=copy(Memo1.Lines[k],i-2,19);
memo1.Lines.CommaText:=date;
inc(c); // ???
end;
inc(i);
end;
← →
Delon (2007-06-21 19:07) [4]ну да понаписал я наверное фигню, но что тут не так.......??????? не пойму.
> begin // ???
>
> date:=copy(Memo1.Lines[k],i-2,19);
> memo1.Lines.CommaText:=date;
>
> inc(c); // ???
да это наверное чуш...., но.... Help me!
← →
гостъ (2007-06-21 19:23) [5]Ну она же (дата) уже выбрана в условии
if k > 0 then
str1 := copy(str,k-37,19);
В str1 строка с датой
Что нужно дальше? Сохранить все даты где-нибудь? = TStringList
TStringList strlst;
...
strlst := TStringList.Create ();
...
if k > 0 then
strlst.Add ( copy ( str, k - 37, 19 );
...
strlst.USAGE
...
strlst.Free;
Нет дельфи под руками, может где и ошибся, но примерно так.
← →
Delon (2007-06-21 19:30) [6]
> strlst.USAGE
> ...
> strlst.Free;
а это что такое?
да вообще я хотел бы выбранные даты засунуть в другое Memo
← →
гостъ (2007-06-21 19:37) [7]хммм...RTFM
> да вообще я хотел бы выбранные даты засунуть в другое Memo
if k > 0 then
Memo2.Lines.Add ( copy ( str, k - 37, 19 ) ); // copy ( str, 1, 19 ) ???
← →
Delon (2007-06-21 19:44) [8]вообще сам код висячный. что-то не так ...??
> while (i<Memo1.Lines.Count) do
> begin
> str :=Memo1.Lines[i];
> k:= Pos("=>",str);
>
> if k > 0 then
> str1 := copy(str,k-37,19);
>
???????????????7
← →
Павел Калугин © (2007-06-22 10:06) [9]Все строки одинаково отформатированы?
дата всюду в одмнаковом формате?
Цитата прямо из соседней ветки.
http://podgoretsky.com/cgi-bin/dlcounter/npscnt?file=http://podgoretsky.com/ftp/Docs/Delphi/Podgoretsky/PasFiles.html&file_id=app-files
Все ждетально, подробно описано
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.07.15;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.041 c