Добрый день!
Столкнулся с тем что преобразование строки в Base64, содержащей символ ASCII <29> с помощью функции printf('%v', Str) дает результат , отличный от ожидаемого (например от преобразования в Notepad++). Причем, обратное преобразование в обоих случаях дает исходную строку.
Есть строка Str='0104670540176099215'W9Um93dGVz' (перед 93dGVz - ASCII <29> )
printf('%v', Str) дает MDEwNDY3MDU0MDE3NjA5OTIxNSdXOVVtHTkzZEdWej==
а в Notepad++
MDEwNDY3MDU0MDE3NjA5OTIxNSdXOVVtHTkzZEdWeg==
отличие в 3-м с конца символе (j и g)
Сервис ожидает именно MDEwNDY3MDU0MDE3NjA5OTIxNSdXOVVtHTkzZEdWeg==
Почему так происходит ? Как решается ? Может, кто сталкивался с этим?
CJSON: Base64Encode
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Основной тред
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Основной тред
- Дед Пахом
- Старичок
- Сообщения: 3343
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 20 раз
- Поблагодарили: 56 раз
- Контактная информация:
CJSON: Base64Encode
Спасибо, исправил. Кстати, символ <29> оказался ни при чём. И да, на обратное преобразование это не влияет.
С уважением, ДП