|
Вопрос по конвертации строк
|
|||
---|---|---|---|
#18+
Здравствуйте, уважаемые форумчане! Есть вопрос, касающийся фокспро. Сразу оговорюсь, что в нем я крайне неопытен, поэтому возможно, что мой вопрос покажется тривиальным. Прошу строго не судить, постараюсь изложить все максимально подробно. Имею в своем распоряжении программу написанную, судя по файлу vfp9r.dll, на FOXPRO 9. Исходников программы нет и не предвидится. Одной из особенностей работы программы является возможность прикреплять к справочнику фотографии. Сама программа Фотографии копирует в отдельный каталог, присваивая им имя вида 20110321159462.jpg но если заглянуть в DBF файл в поле FOTO (тип строка длинной 7 символов) то для данного товара вместо ожидаемого "20110321159462.jpg" находится значение "$bONEL@". Соответственно навскидку перевести из значения находящегося в DBF в имя файла представляется затруднительным. Крайне похоже, что программа берет символ и его двухзначный код, что то вроде 62 = "@" 94 = "L" 15 = "E" И т.д., но при более тщательном анализе - это не так, т.к. в одной строке у символа "O" код 03, а в другой - 73, т.е. алгоритм хитрее, нежели простая замена символов. Соответственно вопрос опытным ЛИСоводам - может кто знает, что за функцией можно конвертировать строку вида "20100921242669" в абракадабру вида "$b8=R--"? Из замеченных моментов - первые два символа в DBF всегда "b$", первые четыре символа в имени фото - по всей видимости год заноса фото в базу. Буду признателен за любые рекомендации и идеи. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2011, 11:06 |
|
Вопрос по конвертации строк
|
|||
---|---|---|---|
#18+
Встроенной функции нет. Это что-то самописное. lazy2Крайне похоже, что программа берет символ и его двухзначный код, что то вроде 62 = "@" 94 = "L" 15 = "E" Твое предположение, неверно т.к. букв всего 5, а цифр 14 Если это не умышленно зашифровано, то можно предположить что преобразование сделано для уменьшения длинны строки, в таких случаях эффективнее преобразовывать в какую-нибудь N-ричную систему исчисления. Где N значительно больше 10, например 40 или 50. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2011, 11:54 |
|
Вопрос по конвертации строк
|
|||
---|---|---|---|
#18+
Собственно говоря, вчера с утра сидел в ReFoxе, и промурыжив его полтора дня (сколько же в этом прокете всякой нафиг не нужной фигни, я думал только 1Сники могут писать такие жесткие нетленки но оказывается ЛИСоводы тоже бывают одаренные) нашел алгоритм шифрования. Вот код формы успешно конвертирующая "абракадабру" в имя файла. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Спасибо всем откликнувшимся. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.11.2011, 12:14 |
|
|
start [/forum/topic.php?fid=41&msg=37514000&tid=1584026]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
others: | 16ms |
total: | 139ms |
0 / 0 |