¿Hay un carácter de escape para una comilla doble en xml? Quiero escribir una etiqueta como:
<parameter name="Quote = " ">
pero si pongo ", significa que la cadena ha terminado. Necesito algo como esto (c ++):
printf("Quote = \" ");
¿Hay un carácter para escribir antes de la comilla doble para evitarlo?
"
resto de la historia ...Respuestas:
Prueba esto:
fuente
Estos son los caracteres comunes que deben escaparse en XML, comenzando con comillas dobles:
"
) se escapan a"
&
) se escapa a&
'
) se escapan a'
<
) se escapa a<
>
) se escapa a>
fuente
Otros han respondido en términos de cómo manejar el escape específico en este caso.
Una respuesta más amplia es no intentar hacerlo usted mismo. Utilice una API XML: hay muchas disponibles para casi todas las plataformas de programación modernas que existen.
Las API XML manejarán cosas como esta automáticamente, lo que hará que sea mucho más difícil equivocarse. A menos que esté escribiendo una API XML usted mismo, rara vez debería tener que preocuparse por detalles como este.
fuente
Respuesta nueva y mejorada a una pregunta antigua y frecuente ...
Cuándo escapar de las comillas dobles en XML
"
Pueden aparecer comillas dobles ( ) sin escapar :En contenido textual XML:
En atributos XML delimitados por comillas simples (
'
):Nota: cambiar a comillas simples (
'
) tampoco requiere ningún escape:Las comillas dobles (
"
) deben ser de escape :En atributos XML delimitados por comillas dobles:
Línea de fondo
Las comillas dobles (
"
) deben escaparse como"
en XML solo en contextos muy limitados.fuente
No, no hay un carácter de escape como tal, en su lugar puedes usar
"
o incluso<![CDATA["]]>
representar al"
personaje.fuente
Si solo necesita probar algo rápidamente, aquí tiene una solución rápida y sucia. Utilice comillas simples para el valor del atributo :
fuente
En C ++ puede utilizar la API ATL de EscapeXML. Esta es la forma correcta de manejar caracteres especiales ...
fuente
Puede intentar usar una barra invertida seguida de una "u" y luego el valor Unicode para el carácter, por ejemplo, el valor Unicode de las comillas dobles es
"-> U + 0022
Por lo tanto, si lo configurara como parte del texto en XML en Android, se vería así,
Esto produciría un texto en TextView aproximadamente algo como esto
"Mostrando comillas dobles"
Puede encontrar unicode de la mayoría de los símbolos y caracteres aquí www.unicode-table.com/en
fuente