Конвертация строковых данных в строку формата base64. Способ N2.
Как конвертировать строковые данные в строку формата base64 с помощью стандартных средств платформы 1С описано в этом сообщении: Конвертация строковых данных в строку формата base64. Плюс данного решения - это использование стандартных средств, то есть ничего устанавливать дополнительно не надо. Минус - это наличие файловой операции, которая занимает определенное время выполнения.
Имеется второй вариант решения данной задачи - прибегнуть к использованию библиотеки CAPICOM. Как регистрировать библиотеку и почему её использование не рекомендуется описано в этой статье: Вычисление хэш-сумм MD, SHA при помощи CAPICOM.
Библиотека CAPICOM имеет объект Utilities, у которого ProgID равен CAPICOM.Utilities.1. Этот объект имеет метод Base64Encode, в который передается строка, на выходе получаем строку формата base64. Перед вызовом метода, исходную строку следует привести к кодировке UTF-8.
Функция конвертирования:
Минус данного решения - необходима установка библиотеки CAPICOM. Если функция вызывается на сервере в клиент-серверном режиме работы, то установка требуется только на машине, где установлен сервер 1С:Предприятие.
Результат работы функции:
Обработку можно скачать по этой ссылке.
Имеется второй вариант решения данной задачи - прибегнуть к использованию библиотеки CAPICOM. Как регистрировать библиотеку и почему её использование не рекомендуется описано в этой статье: Вычисление хэш-сумм MD, SHA при помощи CAPICOM.
Библиотека CAPICOM имеет объект Utilities, у которого ProgID равен CAPICOM.Utilities.1. Этот объект имеет метод Base64Encode, в который передается строка, на выходе получаем строку формата base64. Перед вызовом метода, исходную строку следует привести к кодировке UTF-8.
Функция конвертирования:
// Функция конвертирует строку в строку формата base64.
//
// Параметры
// Строка - Строка - исходная строка.
//
// Возвращаемое значение:
// строка - строка в формате base64.
//
Функция СоздатьСтрокуBase64(Строка) Экспорт
UTF8Enc = Новый COMОбъект("System.Text.UTF8Encoding");
Util = Новый COMОбъект("CAPICOM.Utilities.1");
СтрокаBase64 = util.Base64Encode(UTF8Enc.GetBytes_4(Строка));
СтрокаBase64 = СтрЗаменить(СтрокаBase64, Символы.ПС, "");
СтрокаBase64 = СтрЗаменить(СтрокаBase64, Символы.ВК, "");
Возврат СтрокаBase64;
КонецФункции // СоздатьСтрокуBase64()
Минус данного решения - необходима установка библиотеки CAPICOM. Если функция вызывается на сервере в клиент-серверном режиме работы, то установка требуется только на машине, где установлен сервер 1С:Предприятие.
Результат работы функции:
Пример конвертации строки "123" в base64 |
Комментарии
Отправить комментарий