Имеется такая строка:
\u041d\u043e\u0432\u043e\u0435 \u0432 \u0432\u0435\u0440\u0441\u0438\u0438
Эта строка получена запросом WinHttpRequest.5.1 к одному web-серверу.

Онлайн декодер расшифровывает ее правильно:
Новое в версии

Вопрос: как раскодировать строку в 1С-ке?
---
Надо было показывать сразу всю строку, я же написал: "решение в лоб".

Впрочем, доработка минимальная:

```1c
    Функция УТФвСтроку(ВхСтр)
    ВыхСтр=";
    поз=1;
    Пока поз<СтрДлина(ВхСтр) Цикл
    симв=Сред(ВхСтр,поз,1);
    Если симв="\" И Сред(ВхСтр,поз+1,1)="u" Тогда
    поз=поз+2;
    Вес=4096;
    ВыхКод=0;
    Для п=0 По 3 Цикл
    кодСимв=КодСимвола(ВхСтр,поз+п);
    Если кодСимв>96 Тогда // a-f
    кодСимв=кодСимв-87;
    ИначеЕсли кодСимв>64 Тогда // A-F
    кодСимв=кодСимв-55;
    Иначе
    кодСимв=кодСимв-48; // 0-9
    КонецЕсли;
    ВыхКод=ВыхКод+кодСимв*Вес;
    Вес=Вес/16;
    КонецЦикла;
    ВыхСтр=ВыхСтр+Символ(ВыхКод);
    поз=поз+4;
    Иначе
    ВыхСтр=ВыхСтр+симв;
    поз=поз+1;
    КонецЕсли;
    КонецЦикла;
    Возврат ВыхСтр;
    КонецФункции
```
---
le_, как преобразовать Unicode, правда там пример с украинским языком, но найти таблицу кириллицы, например, в википедии труда не составит)
---
Пример функции во (2) отлично подходит и для русского языка
---
(3) Спасибо! Переделаю функцию из (2).
---
le_, http://web-developer.name/urlcode/
---
Что называется, "в лоб":

```1c
    Функция УТФвСтроку(ВхСтр)
    ВыхСтр=";
    поз=1;
    Пока поз<СтрДлина(ВхСтр) Цикл
    симв=Сред(ВхСтр,поз,1);
    Если симв=" " Тогда
    ВыхСтр=ВыхСтр+симв;
    поз=поз+1;
    ИначеЕсли симв="\" Тогда
    поз=поз+2;
    Вес=4096;
    ВыхКод=0;
    Для п=0 По 3 Цикл
    кодСимв=КодСимвола(ВхСтр,поз+п);
    Если кодСимв>96 Тогда // a-f
    кодСимв=кодСимв-87;
    ИначеЕсли кодСимв>64 Тогда // A-F
    кодСимв=кодСимв-55;
    Иначе
    кодСимв=кодСимв-48; // 0-9
    КонецЕсли;
    ВыхКод=ВыхКод+кодСимв*Вес;
    Вес=Вес/16;
    КонецЦикла;
    ВыхСтр=ВыхСтр+Символ(ВыхКод);
    поз=поз+4;
    Иначе
    поз=поз+1;
    КонецЕсли;
    КонецЦикла;
    Возврат ВыхСтр;
    КонецФункции
```
---
даже компактнее и тоже работает :)
---
У меня нет времени на длинный код. :-)
---
Гут!
Только еще бы она не вырезала символы, которые не закодированы.
Например, из такой строки:
/\u0412\u044b\u0432\u043e\u0434 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438­\u044f \u0441 \u043f\u0440\u043e\u043a\u0440\u0443\u0442\u043a\u043e\u0439­.mht

Должно получиться:
/Вывод изображения с прокруткой.mht
---
Надо было показывать сразу всю строку, я же написал: "решение в лоб".

Впрочем, доработка минимальная:

```1c
    Функция УТФвСтроку(ВхСтр)
    ВыхСтр=";
    поз=1;
    Пока поз<СтрДлина(ВхСтр) Цикл
    симв=Сред(ВхСтр,поз,1);
    Если симв="\" И Сред(ВхСтр,поз+1,1)="u" Тогда
    поз=поз+2;
    Вес=4096;
    ВыхКод=0;
    Для п=0 По 3 Цикл
    кодСимв=КодСимвола(ВхСтр,поз+п);
    Если кодСимв>96 Тогда // a-f
    кодСимв=кодСимв-87;
    ИначеЕсли кодСимв>64 Тогда // A-F
    кодСимв=кодСимв-55;
    Иначе
    кодСимв=кодСимв-48; // 0-9
    КонецЕсли;
    ВыхКод=ВыхКод+кодСимв*Вес;
    Вес=Вес/16;
    КонецЦикла;
    ВыхСтр=ВыхСтр+Символ(ВыхКод);
    поз=поз+4;
    Иначе
    ВыхСтр=ВыхСтр+симв;
    поз=поз+1;
    КонецЕсли;
    КонецЦикла;
    Возврат ВыхСтр;
    КонецФункции
```
---
Cooler, отлично. Спасибо!
Небольшая поправка:

```1c
    Пока поз<=СтрДлина(ВхСтр) Цикл
    ...
```

(а то последний символ "съедает").
---
Небольшая поправка: Согласен, недосмотрел.

Впрочем, "съест" только если последний символ - латиница или цифра ("не закодирован"), если кириллица ("закодирован"), то отработает нормально. Потому и не заметил в работе со строкой из (1), а из (9) не стал проверять.
---
le_, не "Спасибо", а 5 баксов кулеру, за решение ))))))
---
Boneman, уже )
---
Вот вариант:
 КодированнаяСтрока = "\u0412\u044b\u0433\u0440\u0443\u0436\u0435\u043d\u043e 613 \u0441\u0442\u0440\u043e\u043a (\u0432\u0441\u0435\u0433\u043e 613)";
 JSONСтрока = "{""РаскодированнаяСтрока"":""" + КодированнаяСтрока + """}";
 ЧтениеJSON = Новый ЧтениеJSON;
 ЧтениеJSON.УстановитьСтроку(JSONСтрока);
 Результат = ПрочитатьJSON(ЧтениеJSON);
 РаскодированнаяСтрока = Результат.РаскодированнаяСтрока;
---
Вот вариант: Гениальный вариант! Особенно - для ветки 2014 года, когда платформа 8.3.6.1977, начиная с которой была реализована работа с JSON, еще не вышла.
---
Ну ответа-то в ветке нет сейчас
---
ОбщегоНазначения.JSONВЗначение(Ответ.ПолучитьТелоКакСтроку())