Преобразует двоичную строку в значение типа Число. Двоичная строка должна начинаться с префикса "0b", после которого следуют двоичные цифры (одна или больше). Поддерживаются только натуральные числа. Примеры корректных строк: "0b0011001", "0b101001111".
Синтаксис
ЧислоИзДвоичнойСтроки(<ДвоичнаяСтрока>)Полное описание, параметры и ограничения
Глобальный контекст.ЧислоИзДвоичнойСтроки (Global context.NumberFromBinaryString)
Глобальный контекст (Global context)
ЧислоИзДвоичнойСтроки (NumberFromBinaryString)
Доступен, начиная с версии 8.3.10.
Синтаксис:
ЧислоИзДвоичнойСтроки(<ДвоичнаяСтрока>)
Параметры:
<ДвоичнаяСтрока> (обязательный)
Тип: Строка.
Двоичная строка.
Возвращаемое значение:
Тип: Число.
Описание:
Преобразует двоичную строку в значение типа Число.
Двоичная строка должна начинаться с префикса "0b", после которого следуют двоичные цифры (одна или больше).
Поддерживаются только натуральные числа.
Примеры корректных строк: "0b0011001", "0b101001111".
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Использование в версии:
Доступен, начиная с версии 8.3.10.
Методическая информация
Практические примеры
Прочитать числовое значение из двоичного и шестнадцатеричного текста
Преобразуем известные строки без префиксов и видим, что один и тот же текст 10 означает разные числа в разных системах счисления.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Все значения учебные и создаются в памяти; документы, регистры и рабочие данные не изменяются.
Выполняйте на сервере учебной базы. Представление десятичного разделителя в сообщениях зависит от локали.
Это текстовые числовые поля, а не байтовый порядок двоичного пакета. Символы префикса 0x/0b здесь не используются.
Сообщить(ЧислоИзДвоичнойСтроки("11111111"));
Сообщить(ЧислоИзШестнадцатеричнойСтроки("FF"));
Сообщить(ЧислоИзДвоичнойСтроки("10"));
Сообщить(ЧислоИзШестнадцатеричнойСтроки("10"));
Сообщить(Число("10"));
Попытка
Неверное = ЧислоИзШестнадцатеричнойСтроки("0G");
Сообщить(Неверное);
Исключение
Сообщить("Некорректное шестнадцатеричное значение отклонено");
КонецПопытки;Разбор по шагам
11111111 в двоичной системе и FF в шестнадцатеричной обозначают одно число.
У текста 10 результат зависит от явно выбранной функции преобразования.
Некорректную букву G обрабатываем как ошибку входящих данных.
Не подменяем отсутствующее или неверное значение числом 0.
Как проверить результат
Первые результаты 255 и 255, затем 2, 16 и 10.
Значение 0G отклоняется через исключение.
Замените FF на 0A: результат 10. Если ведущий ноль важен для идентификатора, храните исходную строку отдельно.
Ожидаемый результат
Показаны явные преобразования оснований системы счисления и отказ на неверном символе.
На что обратить внимание
Для номера товара FF может быть именно строковым идентификатором — не преобразуйте его в число без контракта.
Чтение сетевого пакета дополнительно требует знания порядка байтов; эти функции его не определяют.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.