Перевод текста из обычного в шестнадцатеричный вид и обратно в 1С
Перекодировка в шестнадцатеричный вид в 1С
ТипКодировки — Число (1 — каждый символ представляется 2 байтами, 0 — 1 байтом)
1 2 3 4 5 6 7 8 9 10 11 12 |
Функция Str2Hex(СтрокаДляРазбора, ТипКодировки) СтрокЗн = ""; Если ТипКодировки = 1 Тогда ДлинаКодаСимвола = 4; Иначе ДлинаКодаСимвола = 2; КонецЕсли; Для К = 1 По СтрДлина(СтрокаДляРазбора) Цикл СтрокЗн = СтрокЗн + Padl(DecToHex(КодСимвола(Сред(СтрокаДляРазбора, К, 1))), ДлинаКодаСимвола, "0"); КонецЦикла; Возврат СтрокЗн; КонецФункции |
Перекодировка в обычное представление из шестнадцатеричного вида в 1С
ПризнакКода — Строка
Тип кодировки («0» — каждый символ представляется 1 байтами, «1» — 2 байтами)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
Функция StrHexToStr(СтрСимв, ПризнакКода) Экспорт Если Число(ПризнакКода) = 0 Тогда КолВоСимв = 2; Иначе КолВоСимв = 4; КонецЕсли; р = 1; Результат = ""; Пока р < СтрДлина(СтрСимв) Цикл Строка = Сред(СтрСимв, р, КолВоСимв); Результат = Результат + Символ(HexToDec(Строка)); р = р + КолВоСимв; КонецЦикла; Возврат Результат; КонецФункции |