У меня есть некоторый текст XML, который я хочу отобразить на странице HTML. Этот текст содержит амперсанд, который я хочу сделать в своей сущности представления: &
.
Как мне избежать этого амперсанда в исходном XML? Я пытался &
, но это декодируется как фактический символ амперсанда ( &
), который недопустим в HTML .
Поэтому я хочу избежать этого таким образом, чтобы он отображался как &
на веб-странице, использующей вывод XML.
Ответы:
Когда ваш XML содержит
&
, это приведет к тексту&
.Когда вы используете это в HTML, оно будет отображаться как
&
.источник
Согласно §2.4 спецификации XML 1.0 , вы должны быть в состоянии использовать
&
.Вы уверены, что это не другая проблема? XML явно определяет это как способ избежать амперсандов.
источник
Этот
&
символ сам по себе является escape-символом в XML, поэтому решение состоит в том, чтобы объединить его и использовать десятичный эквивалент Unicode, чтобы&
гарантировать отсутствие ошибок синтаксического анализа XML. То есть заменить символ&
на&
.источник
&
Используйте
CDATA
теги:источник
&
должно работать просто отлично, в Википедии есть список предопределенных сущностей в XML .источник
В моем случае мне пришлось изменить его на
%26
.Мне нужно было убежать
&
в URL. Так&
что не сложилось для меня. Функция urlencode изменяется&
на%26
. Таким образом, ни XML, ни механизм URL браузера не жаловались на URL.источник
Я пробовал & amp, но это не сработало. Основываясь на ответе Вим тен Бринка, я попытался - и это сработало.
Один из моих коллег-разработчиков предложил мне использовать & # x26; и это работало независимо от того, сколько раз это может быть оказано.
источник
&
способ представить амперсанд в большинстве разделов XML-документа.Если вы хотите, чтобы XML отображался в HTML, вам нужно сначала создать правильно закодированный XML (который включает в себя изменение
&
на&
), а затем использовать его для создания правильно закодированного HTML (который снова включает&
в себя&
). Это приводит к:Для более подробного объяснения кодировки XML см .:
Какие символы мне нужно экранировать в документах XML?
источник
<xsl:text disable-output-escaping="yes">& </xsl:text>
сделает свое дело.источник
Как насчет использования Unicode
\u0026
? Работает для меня в моих файлах Android Android. Если возникнут проблемы, кто-нибудь, дайте мне знать.источник
\u
Экранирование не имеет никакого особого значения в XML вообще. -1.Подумайте, выглядит ли ваш XML ниже.
Вы не можете использовать
<>
напрямую, так как выдает ошибку. В этом случае вы можете использовать<>
вместо этого.Нажмите здесь, чтобы увидеть все коды.
источник