Tengo un archivo XML que es el resultado de una base de datos. Estoy usando el analizador Java SAX para analizar el XML y sacarlo en un formato diferente. El XML contiene algunos caracteres no válidos y el analizador arroja errores como 'Caracteres Unicode no válidos (0x5)'Descompresión de caracteres XML no válidos en Java
Hay una buena manera de quitar todos estos caracteres además de preprocesar el archivo línea por línea y reemplazarlos ? Hasta ahora me he encontrado con 3 diferentes caracteres inválidos (0x5, 0x6 y 0x7). Es un volcado de base de datos de ~ 4 gb y vamos a procesarlo un montón de veces, por lo que tener que esperar 30 minutos adicionales cada vez que obtengamos un nuevo volcado para ejecutar un preprocesador será un dolor, y esta no es la primera vez que me encuentro con este problema.
¿Los personajes tienen algún significado? Es de suponer que no son corrupción al azar, por lo que no les quita la eliminación de información? –
Si el archivo contiene caracteres no válidos, no es un archivo XML. Pídales a los creadores que creen solo XML bien formados en el futuro. He tenido este problema mucho en el pasado. La gente parece no entender que XML debe estar bien formado y no contener basura. – MarkR
Estoy de acuerdo 100% Desafortunadamente no siempre es posible (personas tecnológicas incompetentes, redacción de contratos, etc.) – Mason