|
|
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Есть некая игра, которая пишет логи в файл. Мне необходимо отслеживать изменение файла на новые строки. Искать в них определённые слова или фразы. Если нашло, INC(i); Я не знаю как определить что файл изменился, по этому создал 2 memo. Таймер (100мс), в нем загружаю в memo2 логи. Потом проверяю, если memo1 <> memo2, то гружу текст из memo2 в memo1 и ищу нужное слово или фразу в последней строке. Мне кажется это не самое лучшее решение )) Как лучше это сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2019, 21:31 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Tech N9ne, в джедаях есть пример, как ловить изменение в файловой система. Я перетащил как-то себе, чтобы изменения конфигурационного файла ловить. ... ...а может, все же СУБД? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2019, 21:48 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Tech N9neКак лучше это сделать? Если имя файла можно задать или изменить - то оптимально будет загнать его в именованную трубку. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2019, 22:12 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Tech N9ne, демка. Отслеживает изменения в myFile.ini. Выдрал из старого проекта, поэтому там кое-что лишнее (и сейчас бы не так делал), но собирается и работает. Для Delphi 2007. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2019, 22:30 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
а если просто пересчитывать хэш файла и сравнивать с последним не вариант? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2019, 22:52 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Дока если просто пересчитывать хэш файла и сравнивать с последним не вариант? Во-первых, для подсчёта хэша файл придутся всё равно прочитать целиком. Во-вторых, подобные логи могут быть довольно большими. Если мой совет выше - не вариант, то обычно файл открывают непосредственно функциями WinAPI и периодически пытаются его дочитать начиная с текущей позиции, не обращая внимание на возвращаемый функцией ReadFile ноль. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2019, 23:10 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Док а если просто... https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-readdirectorychangesw ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2019, 23:15 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Ух ты, не только редактирование, но и ссылка на цитируемый оригинал! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2019, 23:45 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
А отслеживание "Size" файла не поможет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2019, 00:26 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Кроик СемёнА отслеживание "Size" файла не поможет? Оно ненадёжно из-за ленивого обновления метаданных. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2019, 01:31 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Это ты не мне, это ты ТС пиши :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2019, 08:54 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Если время реакции не критично, можно по дате изменения отслеживать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2019, 09:42 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Василий 2 Если время реакции не критично, можно по дате изменения отслеживать. Спасибо за помощь. Мне нужно было в реальном времени парсить файл. Но потом подумал, и решил парсить после закрытия игры. В программе проверка, если процесс не запущен, программа берет файл логов, парсит. Удаляет всё из файла логов, и сохраняет его пустым. Для того, что бы в дальнейшем не парсить уже спарсиное). Думал есть какой-то простой способ, увы) Спасибо всем еще раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2019, 14:18 |
|
||
|
Работа с текстовым файлом, который обновляется / изменяется
|
|||
|---|---|---|---|
|
#18+
Tech N9neДумал есть какой-то простой способ, увы) То есть использование FIFO, которое работает в Windows 10 или ReadFile, которое работает везде, слишком сложно для Вас. Ок... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2019, 14:22 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39885103&tid=2038872]: |
0ms |
get settings: |
5ms |
get forum list: |
16ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
138ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 267ms |
| total: | 470ms |

| 0 / 0 |
