FreeMarker выводится в кодировке Unicode, когда идет вопросительный знак - PullRequest
0 голосов
/ 13 февраля 2020

Я анализирую файл JSON со следующим свойством

{
   "xml": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
}

После вывода свойства оно выглядит следующим образом

obj.xml?json_string

{
  "xml": "\u003C?xml version=\"1.0\" encoding=\"UTF-8\"?>"
}

Как я могу остановить FreeMarker от экранирования / кодирования символа "<", если за ним стоит знак вопроса? </p>

1 Ответ

1 голос
/ 13 февраля 2020

Я придумал два решения ...

Первое более ручное:

<#assign obj ={"xml": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"}>

${(obj.xml?json_string)?replace("\\u003C","<")}

Второе более прямое:

<#assign obj ={"xml": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"}>

${obj.xml?j_string}

Оба дают желаемый результат <?xml version=\"1.0\" encoding=\"UTF-8\"?>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...