Java XML解析器提供空元素
当我试图解析XML文件时,它有时会在标题旁边给出一个null元素。 我认为这与HTML标记Java XML解析器提供空元素,java,xml,xml-parsing,Java,Xml,Xml Parsing,当我试图解析XML文件时,它有时会在标题旁边给出一个null元素。 我认为这与HTML标记' 我怎样才能解决这个问题 我有以下XML文件: <item> <title>' Nieuwe DVD '</title> <description>tekst, tekst tekst</description> <link>dvd.html</link> <categor
'代码>
我怎样才能解决这个问题
我有以下XML文件:
<item>
<title>' Nieuwe DVD '</title>
<description>tekst, tekst tekst</description>
<link>dvd.html</link>
<category>nieuws</category>
<pubDate>Sat, 1 Jan 2011 9:24:00 +0000</pubDate>
</item>
' Nieuwe DVD';
特克斯特,特克斯特,特克斯特
dvd.html
纽斯
2011年1月1日星期六9:24:00+0000
以及以下解析xml文件的代码:
//DocumentBuilderFactory, DocumentBuilder are used for
//xml parsing
DocumentBuilderFactory dbf = DocumentBuilderFactory
.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
//using db (Document Builder) parse xml data and assign
//it to Element
Document document = db.parse(is);
Element element = document.getDocumentElement();
//take rss nodes to NodeList
element.normalize();
NodeList nodeList = element.getElementsByTagName("item");
if (nodeList.getLength() > 0)
{
for (int i = 0; i < nodeList.getLength(); i++)
{
//take each entry (corresponds to <item></item> tags in
//xml data
Element entry = (Element) nodeList.item(i);
entry.normalize();
Element _titleE = (Element) entry.getElementsByTagName(
"title").item(0);
Element _categoryE = (Element) entry
.getElementsByTagName("category").item(0);
Element _pubDateE = (Element) entry
.getElementsByTagName("pubDate").item(0);
Element _linkE = (Element) entry.getElementsByTagName(
"link").item(0);
String _title = _titleE.getFirstChild().getNodeValue();
String _category = _categoryE.getFirstChild().getNodeValue();
Date _pubDate = new Date(_pubDateE.getFirstChild().getNodeValue());
String _link = _linkE.getFirstChild().getNodeValue();
//create RssItemObject and add it to the ArrayList
RssItem rssItem = new RssItem(_title, _category, _pubDate, _link);
rssItems.add(rssItem);
conn.disconnect();
}
//DocumentBuilderFactory、DocumentBuilder用于
//xml解析
DocumentBuilderFactory dbf=DocumentBuilderFactory
.newInstance();
DocumentBuilder db=dbf.newDocumentBuilder();
//使用db(DocumentBuilder)解析xml数据并分配
//它与元素有关
Document Document=db.parse(is);
Element=document.getDocumentElement();
//将rss节点带到节点列表
元素。normalize();
NodeList NodeList=element.getElementsByTagName(“项”);
if(nodeList.getLength()>0)
{
for(int i=0;i
当您真正想要getTextContent时,不要使用getFirstElement。使用您的代码和数据对我来说很好。嗯……奇怪……您是否在字符串标题中获得了“';Nieuwe DVD';”?您使用的是什么JAXP实现?