RSS 피드를 구문 분석하기 위해 자체 DefaultHandler를 만들었으며 대부분의 피드에서 ESPN의 경우 잘 작동하고 있기 때문에 방법으로 인해 기사 URL의 일부가 잘립니다. ESPN은 URL을 형식화합니다. ESPN에서 전체 기사 URL의 예 ..Android SAX 파서가 태그 사이에서 전체 텍스트를 가져 오지 않음
http://sports.espn.go.com/nba/news/story?id=5189101&campaign=rss&source=ESPNHeadlines
문제는 DefaultHandler를 문자 방법은 위의 URL을 포함하는 태그에서이 점점 몇 가지 이유입니다.
http://sports.espn.go.com/nba/news/story?id=5189101
위와 같이 앰퍼샌드 이스케이프 코드 이후의 모든 내용이 URL에서 삭제됩니다. 이 이스케이프 코드에서 문자열을 잘라 내지 않도록 SAX 파서를 어떻게 얻을 수 있습니까? 심판을 위해. 여기 내 문자 방법 .. 당신이 볼 수 있듯이, 그것은 앰퍼샌드 이스케이프 코드에서와 후 URL 오프 모든 절단 것
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());
}
}
롭 W.
좋아, 나는 파서가 어떻게 작동하는지 완전히 이해하는 데 시간이 걸리지 않았다. 당신의 대답을 읽은 후에 나는 더 깊이 이해하고 더 깊이 연구했습니다. 귀하의 제안은 당연히 문제 였고, 이후 char 데이터를 올바르게 처리하도록 코드를 업데이트했습니다. TY – brockoli
@CommonsWare : 일부 문자가 누락 되었습니까? 나는 내 경우에 그것을 직면하고있다. – Ankit
나는 image1 : 내 내 xml에 있고 때로는 전체 가치를 얻으며 때로는 "itle"또는 "Title"만 얻습니다. 값을 인쇄하려했지만 부분 값의 경우 "image1 :"을 인쇄하지 않았습니다. –
Ankit