Строка в hex формат и обратно

1. vsesam80 20.10.20 18:03 Сейчас в теме
Доброго времени. Коллеги, кто может поделится функцией преобразования строки в hex и обратно. нашел такое вот:
Функция Str2Hex(ТекстСообщения, ТипКодировки)
                СтрокаЗнаков = "";
                Если ТипКодировки = 1 Тогда
                               ДлинаКодаСимвола = 4;
                Иначе
                               ДлинаКодаСимвола = 2;
                КонецЕсли;
                Для К = 1 По СтрДлина(ТекстСообщения) Цикл
                               СтрокаЗнаков = СтрокаЗнаков + Padl(DecToHex(КодСимвола(Сред(ТекстСообщения, К, 1))), ДлинаКодаСимвола, "0");
                КонецЦикла;
                Возврат СтрокаЗнаков;
КонецФункции // Str2Hex()

// Функция переводит cтроку из шестнадцатеричного представления в обычную строку
// Параметры:
//            СтрокаСимволов           - Строка              - Текст в шестнадцатеричном виде
//            ПризнакКода                   - Строка              - Тип кодировки ("0" - каждый символ представляется 1 байтами, "1" - 2 байтами)
// Возвращаемое значение:  Строка - Строка после перекодировки
//
Функция StrHexToStr(СтрокаСимволов, ПризнакКода) Экспорт
                Если Число(ПризнакКода) = 0 Тогда
                               КоличествоСимволов = 2;
                Иначе
                               КоличествоСимволов = 4;
                КонецЕсли;
                к = 1;
                Результат = "";
                Пока к < СтрДлина(СтрокаСимволов) Цикл
                               Строка = Сред(СтрокаСимволов, к, КоличествоСимволов);
                               Результат = Результат + Символ(HexToDec(Строка));
                               к = к + КоличествоСимволов;
                КонецЦикла;
                Возврат Результат;
КонецФункции // StrHexToStr()
Показать

Но что за функция Padl не понятно. Нет её.
У кого есть рабочее решение? Заранее благодарен!
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user856012 13 20.10.20 19:32 Сейчас в теме
(1)
Но что за функция Padl не понятно.
Это как раз понятно (для динозавров программирования): "дополнить слева", в Фокспро такая есть: https://www.visualfoxpro.com/padl.html

И еще в каком-то древнем языке (кажется, Clipper?) была похожая PadLeft().

Короче, в данном случае ее нетрудно заменить на Прав():
СтрокаЗнаков = СтрокаЗнаков + Прав("0000"+DecToHex(КодСимвола(Сред(ТекстСообщения, К, 1))), ДлинаКодаСимвола);

Нет её.
А DecToHex у вас есть? Если тоже нету, то смотрите сюда: https://helpf.pro/faq/view/940.html
abasovit; +1 Ответить
3. vsesam80 20.10.20 20:47 Сейчас в теме
(2)
Прав("0000"+DecToHex(КодСимвола(Сред(ТекстСообщения, К, 1))), ДлинаКодаСимвола);

Спасибо. Но, не взлетело. там в вашей ссылке еще какие то функции Степень. И тоже их нет. не понятно чем заменить.
4. user856012 13 20.10.20 22:03 Сейчас в теме
(3)
Но, не взлетело
М-да. "Рожденный ползать - летает редко" (с)
какие то функции Степень. И тоже их нет. не понятно чем заменить.
Гуглем, батенька, Гуглем заменяем буквально всё: функция Pow(), http://howknow1c.ru/jazyk-1s/1s-pow.html
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот