这是我要从中提取数据的 RSS、XML 文件。我已经用 SAX 解析器完成了我的全部工作,一切正常。但我解析了整个 RSS 文件并获取了每个元素数据,例如 .
但我的问题是我正在获取整个文件元素数据,但我只想要其中的元素。
<rss version="2.0">
<channel>
<title>RSS Feed</title>
<link>http://www.xyz.com</link>
<description>Calendar RSS Feeds</description>
<language>en-us</language>
<ttl>60</ttl>
<item>
<title>
title 1
</title>
<description>description 1</description>
<link>
http://www.xyz.com
</link>
<guid isPermaLink="false">6027@http://www.xyz.com</guid>
</item>
<item>
<title>
title 2
</title>
<description>description 2</description>
<link>
http://www.xyz.com
</link>
<guid isPermaLink="false">5554@http://www.xyz.com</guid>
</item>
<item>
</channel>
</rss>
我已经尝试了所有的组合来设置这个我会在这里展示我的代码我做了 startElement 和 endElement 方法: -
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
// TODO Auto-generated method stub
current = true;
if (localName.equals("channel"))
{
itemList = new ItemList();
}
}
@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {
// TODO Auto-generated method stub
current = false;
if(localName.equals("title"))
{
itemList.setTitle(currentValue);
}
}
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
// TODO Auto-generated method stub
if(current)
{
currentValue = new String(ch, start, length);
current=false;
}
}
任何人请建议我如何只检索仅在元素下的元素。
我也试过这个,但这给了我错误
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
// TODO Auto-generated method stub
current = true;
if (localName.equals("channel"))
{
if (localName.equals("item"))
{
itemList = new ItemList();
}
}
}
提前致谢。