![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Нужно опознать путь типа c:\folder\folder1 [D5, D6, Win95/98, Win2k, WinXP]
Sirus © (2004-12-08 14:02:00)Нужно опознать путь типа c:\folder\folder1
в строке среди проце белиберды...
Sirus (2004-12-10 11:10:00) [1]А если это начало белиберы... :)
А так проблема решена... Firebird сам тоже некорректно воспринимает пути типа c:\Base;Files\
Начало пути ':\' с одним символом до этой строки
Конец пути ';', '#', #0, #13
jack128 (2004-12-09 11:33:00) [2]А вообще мне нравятся пользователи, которые лапами лезут в конфиг сервера. Коли они такие продвинутые, то просто скажи им, что не создавали такие пути, должны понять.. Либо анализируй, если первые три символа после ';' - это 'X:\' , где Х - буква диска, то это новый путь, иначе продолжение старого...
jack128 (2004-12-09 11:26:00) [3]и что, сам FB коректно разбирает такие пути?
Sirus (2004-12-09 11:02:00) [4]Короче там разделителем путей стоит ";"
Так вот, некоторые юзеры умудряются создать папку примерно такого наименования: "Base;Files".
Так вот если попытаюсь найди конец одного пути по символам конца строки и символу ";",
то получаю в итоге путь: c:\Base вместо c:\Base;Files
jack128 (2004-12-09 10:14:00) [5]Sirus (09.12.04 9:59) [6]
firebird.conf
Хм. Грузишь файл в StringList, убираешь все что находится после символа #. Paths := StringList.Values['AnyVariable']. А дальше все зависит от того, что такое AnyParam
Sirus (2004-12-09 09:59:00) [6]Германн © (09.12.04 01:40) [3]
Вот как раз оно самое и есть...
Это строка из firebird.conf, т.е. мне надо получить возможные пути сохранения внешних таблиц Firebird...
AnyVariable = AnyParam c:\AnyFolder\Any Folder; d:\Any;Folder\Any_Folder # AnyComment
Вот из этой строки мне надо выбрать пути:
c:\AnyFolder\Any Folder
d:\Any;Folder\Any_Folder
Германн (2004-12-09 03:23:00) [7]2 Юрий Зотов © (09.12.04 02:46) [4]
Если Вы это мне, то увы. Не получилось. :(
Не смог найти алгоритм формирования записей в том лог-файле. Увы разработчик сделал его двоичным, а не текстовым. :(
Поэтому то я и акцентировал внимание на словах автора на "белиберде", хотя может быть у автора другое понятие "белиберды".
Юрий Зотов (2004-12-09 02:46:00) [8]Регулярные выражения, либо свой парсинг (что, можно сказать, одно и то же).
Германн (2004-12-09 01:40:00) [9]А вообще-то это очень не просто, если "среди проце белиберды...". И хуже всего два момента. Первое - пробелы в именах. Второе - отсутствие кавычек (ведь если прочее - белиберда, то и кавычек может не быть). А, если еще и поиск нужной строки среди "белиберды" производится не на том самом компе, где этот путь существует, то вообще тупик.
Было дело. Попытался несколько лет назад автоматизировать обработку "лог-файла", создаваемого некой программой. На другом компе, ес-сно. Сломался. :(
Dolt (2004-12-08 21:30:00) [10]А лучше RegExp
Anatoly Podgoretsky (2004-12-08 14:09:00) [11]POS