Форум: "Начинающим";
Текущий архив: 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.46 MB
Время: 0.047 c