Непонятная кодировка

1. yurazyuraz 09.01.18 15:24 Сейчас в теме
Добрый день, подскажите что за кодировка ?

в тексте написано { Поступила заявка на сервис }

{"result":[{"TITLE":"\u041f\u043e\u0441\u0442\u0443\u043f\u0438\u043b\u0430 \u0437\u0430\u044f\u0432\u043a\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0438\u0441",

П \u041f
о \u043e
с \u0441
т \u0442
у \u0443
п \u043f
и \u0438
л \u043b
а \u0430

з \u0437
а \u0430
я \u044f
в \u0432
к \u043a
а \u0430

н \u043d
а \u0430

с \u0441
е \u0435
р \u0440
в \u0432
и \u0438
с \u0441
По теме из базы знаний
Найденные решения
7. amoarok 107 09.01.18 17:35 Сейчас в теме
(6)
Строка = "{""result"":[{""TITLE"":""\u041f\u043e\u0441\u0442\u0443\u043f\u0438\u043b\u0430 \u0437\u0430\u044f\u0432\u043a\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0438\u0441""}]}";
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(Строка);
Результат = ПрочитатьJSON(ЧтениеJSON);
Сообщить(Результат.result[0].TITLE);

Поступила заявка на сервис
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. yurazyuraz 09.01.18 15:40 Сейчас в теме
... ключевые слова в помощь
5. Boneman 302 09.01.18 15:58 Сейчас в теме
(3) это же JSON при обмене с сайтами так кодируется.
Когда то давно (когда 1С еще не умело с JSON работать), делал подобный обмен с сайтом, где клиенты записывались он лайн. Нам поставщик этого сервиса давал инструкции по API командам и маленькую обработку для примера.
это выдернуто оттуда.
Функция ПобитовоеИ(БинарныйМассив1, БинарныйМассив2)
    Результат = Новый Массив;
    Для Индекс = 0 По БинарныйМассив1.Количество()-1 Цикл
        Результат.Добавить(БинарныйМассив1[Индекс] И БинарныйМассив2[Индекс]);
    КонецЦикла;    
    Возврат Результат;
КонецФункции

Функция ПобитовоеИли(БинарныйМассив1, БинарныйМассив2)
    Результат = Новый Массив;
    Для Индекс = 0 По БинарныйМассив1.Количество()-1 Цикл
        Результат.Добавить(БинарныйМассив1[Индекс] Или БинарныйМассив2[Индекс]);
    КонецЦикла;    
    Возврат Результат;
КонецФункции

Функция ЧислоВБинарныйМассив(Знач Число, Знач ВсегоРазрядов = 32)
    Результат = Новый Массив;
    ТекущийРазряд = 0;
    Пока ТекущийРазряд < ВсегоРазрядов Цикл
        ТекущийРазряд = ТекущийРазряд + 1;
        Результат.Добавить(Булево(Число % 2));
        Число = Цел(Число / 2);
    КонецЦикла;
    Возврат Результат;
КонецФункции

Функция БинарныйМассивВЧисло(Массив)
    Результат = 0;
    Для НомерРазряда = -(Массив.Количество()-1) По 0 Цикл
        Результат = Результат * 2 + Число(Массив[-НомерРазряда]);
    КонецЦикла;
    Возврат Результат;
КонецФункции

Функция ПредставлениеБайта(Знач Байт)
    Результат = "";
    СтрокаСимволов = "0123456789ABCDEF";
    Для Счетчик = 1 По 2 Цикл
        Результат = Сред(СтрокаСимволов, Байт % 16 + 1, 1) + Результат;
        Байт = Цел(Байт / 16);
    КонецЦикла;
    Возврат "%" + Результат;
КонецФункции

Функция URLEncode(Строка) 
    Результат = "";
    НаборСимволов = "0123456789ABCDEF";
    Для НомерСимвола = 1 По СтрДлина(Строка) Цикл
        КодСимвола = КодСимвола(Строка, НомерСимвола);
        Символ = Сред(Строка, НомерСимвола, 1);
        
        // пропускаем A..Z, a..z, 0..9
        Если Найти("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456­789", Символ) > 0 Тогда // символы -_.!~*\() кодируем как небезопасные  
            Результат = Результат + Символ;
            Продолжить;
        КонецЕсли;
        
        Если Символ = " " Тогда
            Результат = Результат + "+";
            Продолжить;
        КонецЕсли;
        
        Если КодСимвола <= 127 Тогда // 0x007F
            Результат = Результат + ПредставлениеБайта(КодСимвола);
        ИначеЕсли КодСимвола <= 2047 Тогда // 0x07FF 
            Результат = Результат 
                      + ПредставлениеБайта(
                                             БинарныйМассивВЧисло(
                                                                ПобитовоеИли(
                                                                             ЧислоВБинарныйМассив(192,8),
                                                                             ЧислоВБинарныйМассив(Цел(КодСимвола / Pow(2,6)),8)
                                                                            )
                                                               )
                                          ); // 0xc0 | (ch >> 6)
            Результат = Результат 
                      + ПредставлениеБайта(
                                             БинарныйМассивВЧисло(
                                                                   ПобитовоеИли(
                                                                             ЧислоВБинарныйМассив(128,8),
                                                                             ПобитовоеИ(
                                                                                         ЧислоВБинарныйМассив(КодСимвола,8),
                                                                                        ЧислоВБинарныйМассив(63,8)
                                                                                        )
                                                                            )
                                                                )
                                          );  //0x80 | (ch & 0x3F)
        Иначе  // 0x7FF < ch <= 0xFFFF
            Результат = Результат 
                      + ПредставлениеБайта    (
                                               БинарныйМассивВЧисло(
                                                                  ПобитовоеИли(
                                                                               ЧислоВБинарныйМассив(224,8), 
                                                                               ЧислоВБинарныйМассив(Цел(КодСимвола / Pow(2,12)),8)
                                                                              )
                                                                 )
                                            ); // 0xe0 | (ch >> 12)
                                            
            Результат = Результат 
                      + ПредставлениеБайта(
                                             БинарныйМассивВЧисло(
                                                                   ПобитовоеИли(
                                                                             ЧислоВБинарныйМассив(128,8),
                                                                             ПобитовоеИ(
                                                                                         ЧислоВБинарныйМассив(Цел(КодСимвола / Pow(2,6)),8),
                                                                                        ЧислоВБинарныйМассив(63,8)
                                                                                        )
                                                                            )
                                                                )
                                          );  //0x80 | ((ch >> 6) & 0x3F)
                                            
            Результат = Результат 
                      + ПредставлениеБайта(
                                             БинарныйМассивВЧисло(
                                                                   ПобитовоеИли(
                                                                             ЧислоВБинарныйМассив(128,8),
                                                                             ПобитовоеИ(
                                                                                         ЧислоВБинарныйМассив(КодСимвола,8),
                                                                                        ЧислоВБинарныйМассив(63,8)
                                                                                        )
                                                                            )
                                                                )
                                          );  //0x80 | (ch & 0x3F)
                                
        КонецЕсли;
    КонецЦикла;
    Возврат Результат;
КонецФункции

Показать
4. yurazyuraz 09.01.18 15:54 Сейчас в теме
Спасибо Дмитрий !
проблему я решил.
6. dandykry 12 09.01.18 16:12 Сейчас в теме
(4) Напишите пожалуйста как, может кто-то наткнется на тему и сразу увидит ответ. И мне будет интересно.
7. amoarok 107 09.01.18 17:35 Сейчас в теме
(6)
Строка = "{""result"":[{""TITLE"":""\u041f\u043e\u0441\u0442\u0443\u043f\u0438\u043b\u0430 \u0437\u0430\u044f\u0432\u043a\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0438\u0441""}]}";
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(Строка);
Результат = ПрочитатьJSON(ЧтениеJSON);
Сообщить(Результат.result[0].TITLE);

Поступила заявка на сервис
8. yurazyuraz 22.01.18 10:20 Сейчас в теме
9. websamson 307 24.03.22 12:49 Сейчас в теме
Смотрите здесь Функция ПереобразоватьЮникод(Знач СтрокаВход) https://infostart.ru/public/419846/
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот