Конвертер юникода в кириллицу

28.04.14

Разработка - Универсальные функции

Как преобразовать строку на юникоде в строку на кириллице, например, вот это: "/u042E/u043D/u0438/u043A/u043E/u0434" в это: "Юникод"

Возникла такая необходимость при обмене с CoMagic.ru через API, предоставляемый этим сайтом. Поисковые запросы посетителей, набранные кириллицей, сайт возвращает в юникоде, поэтому нашлось такое решение, может кому-нибудь пригодится:

// "/u042E/u043D/u0438/u043A/u043E/u0434" = "Юникод"

ТекстВЮникоде = "/u042E/u043D/u0438/u043A/u043E/u0434";

ХТМЛ_Текст = "
|<html>
|<body>
|<script type='text/javascript'>
|var str = '" + ТекстВЮникоде + "';
|document.write(unescape(str));
|</script>
|</body>
|</html>
|";

НовыйHTMLДокумент = Новый COMОбъект("HtmlFile");
НовыйHTMLДокумент.open("text/html");
НовыйHTMLДокумент.write(ХТМЛ_Текст);
НовыйHTMLДокумент.close();

ТекстПослеПерекодировки = НовыйHTMLДокумент.documentElement.outerText;

Вступайте в нашу телеграмм-группу Инфостарт

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Загрузка и выгрузка в Excel Универсальные функции Программист 1С:Предприятие 8 Россия Бесплатно (free)

Описанный ниже подход позволяет в три шага заполнять формулы в Excel файлы, вне зависимости от ОС сервера (MS Windows Server или Linux). Подход подразумевает отказ от работы с COM-объектом в пользу работы через "объектную модель документа" (DOM).

30.10.2025    4983    Abysswalker    11    

47

Универсальные функции Работа с интерфейсом Программист 1С:Предприятие 8 Бесплатно (free)

Порой необходимо временно отключить расширение 1С, не удаляя его, чтобы не потерять данные. Но в этом случае при каждом запуске всем будет лезть уведомление о неактивном расширении, хотя очевидно, это техническая информация, которой не стоит лишний раз пугать пользователей.

14.05.2025    9309    DeerCven    15    

63

Универсальные функции Программист 1С:Предприятие 8 1C:Бухгалтерия Бесплатно (free)

Благодаря этим пяти строчкам можно больше не заморачиваться с загрузкой из внешних файлов. Пользуюсь везде, всегда и постоянно.

21.05.2024    58969    dimanich70    85    

175

Универсальные функции Программист 1С:Предприятие 8 1C:Бухгалтерия Абонемент ($m)

Задача: вставить картинку из буфера обмена на форму средствами платформы 1С.

1 стартмани

18.03.2024    8237    7    John_d    13    

59

Универсальные функции Программист Стажер 1С:Предприятие 8 1C:Бухгалтерия Бесплатно (free)

Пришлось помучиться с GUID-ами немного, решил поделиться опытом, мало ли кому пригодится.

12.02.2024    73988    atdonya    31    

73

Универсальные функции Программист 1С:Предприятие 8 Бесплатно (free)

На заключительных этапах, когда идет отладка или доработка интерфейса, необходимо много раз переоткрыть внешний объект. Вот один из способов автоматизации этого.

30.11.2023    10225    ke.92@mail.ru    17    

68
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. AYurin 121 12.04.17 19:30 Сейчас в теме
Альтернативный способ:
Функция УТФвСтроку(ВхСтр)Экспорт
	
	ВыхСтр="";
	
	поз=1;
    Пока поз<=СтрДлина(ВхСтр) Цикл
		
		симв=Сред(ВхСтр,поз,1);
		
		Если симв="\" И Сред(ВхСтр,поз+1,1)="u" Тогда
           поз=поз+2;
           Вес=4096;
           ВыхКод=0;
           Для п=0 По 3 Цикл
               кодСимв=КодСимвола(ВхСтр,поз+п);
               Если кодСимв>96 Тогда // a-f
                  кодСимв=кодСимв-87;
               ИначеЕсли кодСимв>64 Тогда // A-F
                  кодСимв=кодСимв-55;
               Иначе
                  кодСимв=кодСимв-48; // 0-9
              КонецЕсли;
              ВыхКод=ВыхКод+кодСимв*Вес;
              Вес=Вес/16;
          КонецЦикла;
          ВыхСтр=ВыхСтр+Символ(ВыхКод);
          поз=поз+4;
        Иначе
           ВыхСтр=ВыхСтр+симв;
           поз=поз+1;
	   КонецЕсли;
	   
	КонецЦикла;
	
    Возврат ВыхСтр;
	
КонецФункции
Показать
Для отправки сообщения требуется регистрация/авторизация