tiene un error con saxParser en Android (no está bien formado (token no válido))

Estoy tratando de obtener un archivo xml desde el enlace URL. Este código para Android. Estoy usando SAXParser para hacerlo. pero tengo error:

org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 87: not well-formed (invalid token)

en esta linea

 saxParser.parse(url.openStream(),handler);

mi codigo es:

URL url = null;

try {
    url = new URL("toryRss1854.xml");
} catch (MalformedURLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser saxParser = null;
try {
    saxParser = factory.newSAXParser();
    saxParser.parse(url.openStream(),handler);

¿Qué se puede hacer?

preguntado el 27 de agosto de 11 a las 15:08

1 Respuestas

El problema parece ser que el XML que está intentando analizar no es UTF-8, por lo que debe indicarle a SAX qué codificación utilizar.

algo como esto debería funcionar (aunque no lo probé)

InputSource is = new InputSource(url.openStream());
is.setEncoding("Cp1255");
parser.parse(is, handler);

Respondido 27 ago 11, 22:08

Los documentos dicen que no es necesario especificar una codificación; SaxParser debería poder detectar automáticamente la codificación - DennisVA

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.