He creado mi propio DefaultHandler para analizar feeds rss y para la mayoría de los feeds funciona bien, sin embargo, para ESPN, está cortando parte de la url del artículo debido a la forma Los formatos de ESPN son urls. Un ejemplo de un artículo de URL completa de ESPN ..Analizador SAX de Android que no recibe el texto completo entre las etiquetas
http://sports.espn.go.com/nba/news/story?id=5189101&campaign=rss&source=ESPNHeadlines
El problema es por alguna razón el método de caracteres DefaultHandler sólo es cada vez esto desde la etiqueta que contiene la URL anterior.
http://sports.espn.go.com/nba/news/story?id=5189101
Como puede ver, está cortando todo lo que está fuera de la url del código de escape de ampersand y después. ¿Cómo puedo hacer que el analizador SAX no corte mi cuerda en este código de escape? Por ref. aquí es mi método caracteres ..
public void characters(char ch[], int start, int length) {
String chars = (new String(ch).substring(start, start + length));
try {
// If not in item, then title/link refers to feed
if (!inItem) {
if (inTitle)
currentFeed.title = chars;
} else {
if (inLink)
currentArticle.url = new URL(chars);
if (inTitle)
currentArticle.title = chars;
if (inDescription)
currentArticle.description = chars;
if (inPubDate)
currentArticle.pubDate = chars;
if (inEnclosure) {
}
}
} catch (MalformedURLException e) {
Log.e("RSSReader", e.toString());
}
}
Rob W.
Ok, realmente no me tomé el tiempo para entender completamente cómo estaba funcionando el analizador. Después de leer su respuesta, volví e investigué más para obtener una mejor comprensión. Su sugerencia fue el problema, por supuesto, desde entonces he actualizado mi código para manejar los datos de los caracteres correctamente. TY – brockoli
@CommonsWare: ¿Extraño algunos personajes? Lo estoy enfrentando en mi caso. – Ankit
Tengo imagen1: título en mi xml y en algún momento obtengo un valor total y, a veces, obtengo solo "itle" o "Título". He intentado imprimir valores, pero nunca ha impreso "imagen1:" para valores parciales. –
Ankit