|
Не ладится с JSON и спец.символы | ☑ | ||
---|---|---|---|---|
0
zippygrill
16.10.20
✎
16:02
|
""WINDOWS-1251"" превращается в \"WINDOWS-1251\"
Как только не крутил ПараметрыЗаписиJSON, нужного результата не могу добиться. Невидимый перенос строки в текстовый документ всплывает естессно как \n в json Как их победить красиво.. ТекстXML = Новый ТекстовыйДокумент; ТекстXML.ДобавитьСтроку("<?xml version=1.0 encoding=""WINDOWS-1251"" ?>"); ТекстДляЗаписи = ТекстXML.ПолучитьТекст(); //<?xml version=1.0 encoding="WINDOWS-1251" ?> ЗаписьJSON.ЗаписатьИмяСвойства("xmlStr"); ЗаписьJSON.ЗаписатьЗначение(ТекстДляЗаписи); СтрJSON = ЗаписьJSON.Закрыть(); //"xmlStr": "<?xml version=1.0 encoding=\"WINDOWS-1251\" ?>\n" |
|||
1
asady
16.10.20
✎
16:06
|
(0) СтрЗаменить(СтрокаJSON,Символы.ПС,"");
|
|||
2
zippygrill
16.10.20
✎
16:07
|
(1) с ПС легче всего..а вот остальные
|
|||
3
Garykom
гуру
16.10.20
✎
16:10
|
(0) это не баг это фича https://www.json.org/json-ru.html
|
|||
4
Garykom
гуру
16.10.20
✎
16:13
|
(0) И вопрос нафуя ты XML через JSON пишешь?
|
|||
5
Garykom
гуру
16.10.20
✎
16:14
|
(4)+ Если надо, обычно юзают Base64
|
|||
6
Garykom
гуру
16.10.20
✎
16:14
|
(5)+ "xmlStr": Base65("<?xml version=1.0 encoding=\"WINDOWS-1251\" ?>\n")
|
|||
7
Garykom
гуру
16.10.20
✎
16:14
|
(6) *Base64("<?xml version=1.0 encoding=\"WINDOWS-1251\" ?>\n")
|
|||
8
zippygrill
16.10.20
✎
16:15
|
(4) ну вот на той стороне так api написали
|
|||
9
zippygrill
16.10.20
✎
16:15
|
(7) а base65 - это следующий уровень скиллов?))
|
|||
10
Garykom
гуру
16.10.20
✎
16:17
|
(9) дык хоть Base66 или даже Base666 при желании
По сути это банальная замена по основанию, как двоичная, десятичная, шестнадцатиричная, 64-ричная и т.д. система счисления |
|||
11
Garykom
гуру
16.10.20
✎
16:20
|
(8) интересный api, не поделишься? тоже хочу попробовать че они там курят
|
|||
12
Lexey_
16.10.20
✎
16:34
|
(0) ЗаписьJSON.ПроверятьСтруктуру = Ложь;
... ЗаписьJSON.ЗаписатьБезОбработки(ТекстДляЗаписи); |
|||
13
zippygrill
16.10.20
✎
16:37
|
(11) возможно студенты писали этот АПИ судя по тому как указали атрибуты, потому что xsd схему/пакет xdto я не могу наверстать на его основе
|
|||
14
VKS
16.10.20
✎
16:38
|
Кстати, у меня тоже не получилось победить экранизацию символов. Все параметры перепробовал, может релиз такой. Попробуйте у себя, у записи JSON есть параметры, с ними поиграть.
Если получится, напишите номер релиза Мне же пришлось через СтрЗаменить костылить |
|||
15
VKS
16.10.20
✎
16:40
|
где-то тут
ПараметрыJSON = Новый ПараметрыЗаписиJSON( ПереносСтрокJSON.Авто, // ПереносСтрок. " ", // СимволыОтступа. Истина, // ИспользоватьДвойныеКавычки. ЭкранированиеСимволовJSON.Нет, // ЭкранированиеСимволов. Ложь, // ЭкранироватьУгловыеСкобки. Ложь, // ЭкранироватьРазделителиСтрок. Ложь, // ЭкранироватьАмперсанд. Ложь, // ЭкранироватьОдинарныеКавычки. Ложь); // ЭкранироватьСлеш. |
|||
16
zippygrill
16.10.20
✎
16:46
|
(7) Base64Значение?
|
|||
17
zippygrill
16.10.20
✎
16:46
|
(15) да я уже наигрался
|
|||
18
zippygrill
16.10.20
✎
17:00
|
(12) почти то что надо.
записал так //"xmlStr": <?xml version=1.0 encoding="WINDOWS-1251" ?> надо так //"xmlStr": "<?xml version=1.0 encoding="WINDOWS-1251\" ?>" |
|||
19
Lexey_
16.10.20
✎
17:13
|
(18) добавь кавычки ЗаписьJSON.ЗаписатьБезОбработки("""" + ТекстДляЗаписи + """");
|
|||
20
ДедМорроз
16.10.20
✎
17:18
|
Вообще-то,любой символ json можно писать кодом через \x и две цифры для байта и любой парсер json должен их кушать,если не кушает,то это не json парсер,а txt парсер,тогда пишите ему через ЗаписьТекста и не скачайте json.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |