2012-04-20 2 views
15

Android에서 웹에서 XML을 구문 분석하고 있습니다. 아래 코드는 XML 샘플을 보여줍니다. 문제는 항목 태그의 문자열 값을 가져올 수 없다는 것입니다. name = attributes.getQName(i);을 사용하면 속성 값이 아닌 이름이 출력됩니다.SAX 파서를 사용하면 속성 값을 얻습니다.

<weatherdata> 
<timetags> 
    <item name="date"> 
    <value>20/04/2012</value> 
    <unit/> 
    <image/> 
    <class>dynamic</class> 
    <description>The current date</description> 
    </item> 

답변

17

사용

attributes.getValue(i); 

대신

attributes.getQName(i); 

doc가 말한대로 이유는

getQName : 속성의 자격 (접두사) 명을 돌려줍니다 .

getValue : 자격 (접두사) 이름을 지정해 속성의 값을 검색합니다.

attributes.getValue(i) 방법을 시도 속성 이름과 값

2

을 얻기를 위해 this 예를 참조

13
@Override 
public void startElement(String uri, String localName, String qName, 
     Attributes attributes) throws SAXException { 
    if(localName.equalsIgnoreCase("item")){ 
     //currentMessage.setMediaUrl(attributes.getValue(BaseFeedParser.Url)); 
        String valueis=attributes.getValue("name") 
    } 
    super.startElement(uri, localName, qName, attributes); 
} 
관련 문제