Como posso escapar aspas duplas nos valores de atributos XML?

Respostas:

223

Você pode usar "

Sachin Shanbhag
fonte
3
Uma convenção de nomenclatura explícita e mais longa é melhor do que acrônimos ou abreviada ao nomear variáveis, funções, atributos ou etc .; Vou ter clareza sobre a concisão a qualquer momento - é minha opinião não solicitada.
precisa
1
Eu concordo com o Daniel. A brevidade pode economizar um segundo de digitação, mas as pessoas precisam gastar 10 minutos tentando descobrir o que está acontecendo.
NL3294 26/01
@Daniel Sokolowski: A que vocês dois estão se referindo? Existe algum contexto ausente (por exemplo, comentários excluídos)?
Peter Mortensen
Deve ser @ PeterMortensen, eu esqueço agora, isso foi há quase 7 anos :) :)
Daniel Sokolowski
54

Na especificação XML :

Para permitir que os valores de atributo contenham aspas simples e duplas, o apóstrofo ou caractere de aspas simples (') pode ser representado como "&"; e o caractere de aspas duplas (") como" & quot;

Wim Coenen
fonte
17

Um caractere de aspas duplas ( ") pode ser escapado como ", mas aqui está o resto da história ...

O caractere de aspas duplas deve ser escapado neste contexto:

  • Nos atributos XML delimitados por aspas duplas:

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

O caractere de aspas duplas não precisa ser escapado na maioria dos contextos:

  • No conteúdo textual XML:

    <NoEscapeNeeded>He said, "Don't quote me."</NoEscapeNeeded>
  • Nos atributos XML delimitados por aspas simples ( '):

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

    Da mesma forma, ( ') não requer escape se ( ") for usado para os delimitadores de valor de atributo:

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

Veja também

kjhughes
fonte
8

A página de conversão de String no site do Coder's Toolbox é útil para codificar mais do que uma pequena quantidade de código HTML ou XML para inclusão como valor em um elemento XML.

Kenny Evitt
fonte