2011-01-28 52 views
0
private class RSSHandler extends DefaultHandler 
{ 
    final int stateUnknown = 0; 
    final int stateTitle = 1; 
    int state = stateUnknown; 

    int numberOfTitle = 0; 
    String strTitle = ""; 
    String strElement = ""; 

    @Override 
    public void startDocument() throws SAXException { 
     // TODO Auto-generated method stub 
     strTitle = "--- Start Document ---\n"; 
    } 

    @Override 
    public void endDocument() throws SAXException { 
     // TODO Auto-generated method stub 
     strTitle += "--- End Document ---"; 
     streamTitle = "Number Of Title: " + String.valueOf(numberOfTitle) + "\n" 
        + strTitle; 
    } 

    @Override 
    public void startElement(String uri, String localName, String qName, 
      Attributes attributes) throws SAXException { 
     // TODO Auto-generated method stub 
     if (localName.equalsIgnoreCase("title")) 
     { 
      state = stateTitle; 
      strElement = "Title: "; 
      numberOfTitle++; 
     } 
     else if (localName.equalsIgnoreCase("link")) 
     { 
      state = stateTitle; 
      strElement = "Link: "; 
      numberOfTitle++; 
     } 
     else 
     { 
      state = stateUnknown; 
     } 
    } 

    @Override 
    public void endElement(String uri, String localName, String qName) 
      throws SAXException { 

     // TODO Auto-generated method stub 
     if (localName.equalsIgnoreCase("title")) 
     { 
      strTitle += strElement + "\n"; 
     } 
     else if (localName.equalsIgnoreCase("link")) 
     { 
      strTitle += strElement + "\n"; 
     } 

     state = stateUnknown; 
    } 

    @Override 
    public void characters(char[] ch, int start, int length) 
      throws SAXException { 
     // TODO Auto-generated method stub 
     String strCharacters = new String(ch, start, length); 
     if (state == stateTitle) 
     { 
      strElement += strCharacters; 
     } 
    } 

} 

現在我得到所有級別上的所有「鏈接」和「標題」元素。但是,我需要輸入什麼才能獲得只有「標題」元素的孩子。例如:android rss解析,獲取子元素

<title>foo</title> 
    <item> 
     <title>bar</title> 
    </item> 

我只是想 「吧」。由於

回答

0

相反回答你的問題,我建議你去這裏的:Working with XML on Android

+2

如果你要提出建議,然後考慮評論的問題,而不是回答它。 – 2011-07-17 14:08:22