Главная страница
    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.044 c
15-1170072129
Ученик чародея
2007-01-29 15:02
2007.02.18
Какое количество ошибок в программе можно считать нормальным?


3-1164617923
m.tanana
2006-11-27 11:58
2007.02.18
Удаленная БД


2-1170326279
WhiteBarsik
2007-02-01 13:37
2007.02.18
В EXE не желает включаться "designide"


15-1169733670
vasIzmax
2007-01-25 17:01
2007.02.18
Тест по ТАСО


2-1170158201
Long1
2007-01-30 14:56
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский