Analizador XML: se encontró un carácter no válido en el contenido de texto
Este artículo le ayuda a resolver errores al analizar lenguaje de marcado extensible (XML) que contiene caracteres especiales mediante el analizador XML de Microsoft (MSXML).
Versión del producto original: .NET Framework
Número KB original: 238833
Síntoma
Al analizar XML que contiene caracteres especiales mediante el analizador XML de Microsoft (MSXML), el analizador puede notificar el siguiente mensaje de error en la línea y posición del primer carácter especial:
Se encontró un carácter no válido en el contenido de texto.
Causa
El documento XML no está marcado con el esquema de codificación de caracteres adecuado.
Solución
- Especifique el esquema de codificación adecuado en la instrucción de procesamiento XML.
- Vuelva a codificar los datos XML como UTF-8 adecuado.
Estado
Este comportamiento es una característica del diseño de la aplicación.
Más información
El carácter especial hace referencia a cualquier carácter que no sea el intervalo estándar del conjunto de caracteres de código estándar estadounidense para intercambio de información (ASCII) de 0x00- 0x7F, como caracteres latinos con acentos, umlauts u otros diacríticos. El esquema de codificación predeterminado para documentos XML es UTF-8, que codifica caracteres ASCII con un valor de 0x80 o superior a otros esquemas de codificación estándar.
Más a menudo, verá este problema si está trabajando con datos que usan el esquema de codificación iso-8859-1 simple. En este caso, la solución más rápida suele ser la primera que aparece antes en la sección Resolución. Por ejemplo, use la siguiente declaración XML:
<?xml version="1.0" encoding="iso-8859-1" ?>
<rootelement>
...XML data...
</rootelement>
En su lugar, puede codificar cada uno de esos caracteres mediante la referencia de entidad numérica. Por ejemplo, puedes tomar el carácter especial á, usar <test> á</test> (versión decimal) o <test>á</test> (versión hexadecimal).