Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];

Вниз

Поиск даты и слова в txt   Найти похожие ветки 

 
Garacio ©   (2007-01-30 20:12) [0]

Отчёт о работе «чужой» программы сохраняется в файле LOG.txt в виде:
------------------------
01.01.07 10:00
Ошибка №ХХХ
Примечание-1
Примечание-2

02.01.07 14:10
Ошибка №ХХХ
Примечание-1
Примечание-2
Примечание-3

02.01.07 16:30
Предупреждение
Примечание


-----------------------
Как организовать вывод (в своей программе) в поле Memo информации об сегодняшних ошибках (предупреждение игнорировать)?


 
Джо ©   (2007-01-30 20:18) [1]

А в чем конкретная трудность?


 
Garacio ©   (2007-01-30 20:25) [2]

Во-первых, скажу честно, не нашёл понятного (для новичка) примера поиска слова в txt-файле.
Во-вторых, мы, допустим, нашли слово "Ошибка", необходимо отобразить примечание (но мы не знаем - сколько строчек будет занимать примечание, известно только, что сообщения разделены пустой строкой)?


 
Джо ©   (2007-01-30 20:32) [3]

Если файл относительно невелик, то можно воспользоваться классом TStringList.
1. Загрузка файла: List.LoadFromFile
2. Доступ к строкам по номеру: List[N], кол-во строк: List.Count.


 
Garacio ©   (2007-01-31 16:00) [4]

Подсказали FindFirstChangeNotification - но я прочитал, что это не работает в версиях Windows9x!
У меня появилась идея, может Вы поможете реализовать её?

При запуске программы:
AssignFile(txt, Dir+"\LOG.txt");
Reset(txt);
while not EOf(txt) do
 begin
 Readln(txt, Stroka);
 If Stroka = "Ошибка"
   then begin
   While Stroka <>"" do
     MemoInfo.Text := Stroka;
   end;
 end;
CloseFile(txt);


Должно получиться примерно так, но:
1. Как проверять строку на наличие слова "Ошибка", если оно не единственное в этой строке?
2. Как добавить проверку сообщения на соответствие сегодняшней дате? (или как вариант очищать при закрытии программы файл txt)?
3. И как отслеживать изменения во время работы программы, если работать в разных ОС?


 
Джо ©   (2007-01-31 16:06) [5]

> 1. Как проверять строку на наличие слова "Ошибка", если
> оно не единственное в этой строке?

Pos


> 2. Как добавить проверку сообщения на соответствие сегодняшней
> дате? (или как вариант очищать при закрытии программы файл
> txt)?

Разобрать строку при помощи Pos. Для конвертирования даты из строки — [Try]StrToDateTime, а лучше — ручной разбор и EncodeDateTime.


> 3. И как отслеживать изменения во время работы программы,
> если работать в разных ОС?

FindFirstChangeNotification работает во всех версиях Windows, начиная с Windows 95.
Кроме того, можно просто периодически проверять время последнего доступа к файлу.


 
Efir   (2007-01-31 16:06) [6]

Pos(строка). Результат функции - первое вхождение слова в строке, если значение <0 , значит слово не найдено.


 
Palladin ©   (2007-01-31 16:12) [7]


> Efir   (31.01.07 16:06) [6]

если значение равно нулю, тогда не найдено



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.042 c
15-1168795073
IMHO
2007-01-14 20:17
2007.02.18
Падение Шевченко


2-1170394666
Chelovek
2007-02-02 08:37
2007.02.18
Предустановка свойств нового компанента......


1-1166759833
firebird
2006-12-22 06:57
2007.02.18
Delphi не запускается?


2-1170336039
Lera
2007-02-01 16:20
2007.02.18
Наличие файла


2-1170270761
ice321i
2007-01-31 22:12
2007.02.18
Кодировка





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский