마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

xmlPullParser link 값이 안와요..

0 추천

네이버 open api 로 파싱 하고 있는데요 

<rss version="2.0">
<channel>
<title>Naver Open API - cafearticle ::'안드로이드'</title>
<description>Naver Search Result</description>
<lastBuildDate>Wed, 09 Jul 2014 14:35:13 +0900</lastBuildDate>
<total>662686</total>
<start>1</start>
<display>10</display>
<item>
<title><b>안드로이드</b> vs ios</title>
<description>
... 버려서 <b>안드로이드</b>로 넘어와 봤는데요 겔럭시s4 LTE-a 이름이 참 길고 부르기 불편하네요 이거단점인가?... 하는건 <b>안드로이드</b>도 마찬가지니까 큰 페널티는 아닌거 같기도 하네요 2 최대의 단점 바로 아이튠즈 동기화...
</description>
<cafename>직폰 ◀ 직거래 폰 스마트폰 휴대폰 뽐...</cafename>
</item>

 

파싱해온게 이런거라고 하고 

while (xpp.getEventType() != XmlPullParser.END_DOCUMENT) {
if (xpp.getEventType() == XmlPullParser.START_TAG) {
String strName = xpp.getName(); // 태그 name얻어옴
Log.e("tag", "name : " + strName);
if ("link".equals(strName)) {
sb.append(xpp.nextText() + "\n");
// 내용 얻어오기
}
}
xpp.next(); // 다음줄로 가기
} // end while
 
이렇게 코딩 했을때 디버그 해보면 상위 channel 안에만 돌고 아래 item 부분은 들어가질 않네요 
 
Log 를 보면 rss , channel , title , link ,description , lastBuilDate, total , start ,display 이렇게 한번 돌고 마네요
 
제가 가져 오고 싶은 부분은 item 안에 link 부분인데 ㅜㅜ 
 
가져와서 값을 보면  http://search.naver.com 이것만 들어와있네요
 
제가 필요한부분은 

http://openapi.naver.com/l?AAAD2MQQ7CIBRET/O7bAqUBhYs2lrvgTAVo0IlaNLbS12YzOLNvGReb+Td0DKTlqQULRNpQXo+YGQ/qOpEU/9XTdk3GGdX2Fxu7oHmjt04z3sPNUAxSKiLAB+87tnKeGc7bZuQsZpQykZiJH6uOS7aaD/IrUvPOsClawbiFlJE7Ux2+gvw4E7voQAAAA==

이건데 ㅜㅜ

숀화이트 (3,310 포인트) 님이 2014년 7월 9일 질문

1개의 답변

0 추천
xml 구조를 잘 보세요

<rss> 밑에 <channel> 있고, <channel>을 닫는 부분이 없으니

<title>, <link>, <description>, ... <item> 까지 전부 <channel>의 하위 엘레먼트에요
b22n (22,940 포인트) 님이 2014년 7월 9일 답변
...