157 votes

Comment puis-je échapper aux guillemets doubles dans les valeurs d'attributs XML ?

A partir des essais suivants

<tag attr="\"">
<tag attr="<![CDATA["]]>">
<tag attr='"'>

Seul le dernier fonctionne pour un analyseur XML que j'utilise ici. Existe-t-il une alternative ?

1 votes

&quot; est la réponse ; voici l'explication .

1 votes

256voto

Sachin Shanbhag Points 20979

Vous pouvez utiliser &quot;

55voto

Wim Coenen Points 41940

De la Spécification XML :

Pour permettre aux valeurs d'attributs de contenir à la fois des guillemets simples et doubles, le apostrophe ou le caractère guillemet simple (') peut être représenté par "'", et le caractère de guillemets doubles (") comme étant """.

26voto

kjhughes Points 5581

Un caractère double guillemet ( " ) peut être échappé en tant que &quot; mais voici la suite de l'histoire...

Caractère double guillemet doit être échappé dans ce contexte :

  • Dans les attributs XML délimités par des guillemets doubles :

    <EscapeNeeded name="Pete &quot;Maverick&quot; Mitchell"/>

Caractère double guillemet pas besoin être échappé dans la plupart des contextes :

  • Dans le contenu textuel XML :

    <NoEscapeNeeded>He said, "Don't quote me."</NoEscapeNeeded>
  • Dans les attributs XML délimités par des guillemets simples ( ' ) :

    <NoEscapeNeeded name='Pete "Maverick" Mitchell'/>

    De même, ( ' ) ne nécessitent aucun échappement si ( " ) sont utilisés pour délimiter les valeurs des attributs :

    <NoEscapeNeeded name="Pete 'Maverick' Mitchell"/>

Voir aussi

8voto

Kenny Evitt Points 1876

Le site Conversion des chaînes de caractères sur la page Boîte à outils du codeur est pratique pour coder plus qu'une petite quantité de code HTML ou XML à inclure comme valeur dans un élément XML.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X