在解析xml文件时,如果出现元素属性内容为空是,通过parse后,出现属性丢失。
例如:
xml文件内容如下:
<?xml version="1.0" encoding="UTF-8" ?>
<Test xmlns = "">
<fistChilren xmlns = "Lionel"></fistChilren>
</Test>通过DOM或者JDOM解析后,输出的内容为:
<?xml version="1.0" encoding="UTF-8"?><Test>
<fistChilren xmlns="Lionel"/>
</Test>
也即使说在xmlns为空是,经过解析后。属性名称丢失了。
请问:如何才能在解析过程中保持其属性名称存在呢?
解析代码如下:
public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException, TransformerException{
DocumentBuilderFactory tDBF = DocumentBuilderFactory.newInstance();
DocumentBuilder tDocBui = tDBF.newDocumentBuilder();
Document tDoc = tDocBui.parse("D:\\TestFile\\test.xml");
javax.xml.transform.TransformerFactory tTF = TransformerFactory.newInstance();
Transformer tTransformer = tTF.newTransformer();
DOMSource tDOMSource = new DOMSource(tDoc);
StreamResult tResult = new StreamResult(System.out);
tTransformer.transform(tDOMSource, tResult);
}大家给点一件
例如:
xml文件内容如下:
<?xml version="1.0" encoding="UTF-8" ?>
<Test xmlns = "">
<fistChilren xmlns = "Lionel"></fistChilren>
</Test>通过DOM或者JDOM解析后,输出的内容为:
<?xml version="1.0" encoding="UTF-8"?><Test>
<fistChilren xmlns="Lionel"/>
</Test>
也即使说在xmlns为空是,经过解析后。属性名称丢失了。
请问:如何才能在解析过程中保持其属性名称存在呢?
解析代码如下:
public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException, TransformerException{
DocumentBuilderFactory tDBF = DocumentBuilderFactory.newInstance();
DocumentBuilder tDocBui = tDBF.newDocumentBuilder();
Document tDoc = tDocBui.parse("D:\\TestFile\\test.xml");
javax.xml.transform.TransformerFactory tTF = TransformerFactory.newInstance();
Transformer tTransformer = tTF.newTransformer();
DOMSource tDOMSource = new DOMSource(tDoc);
StreamResult tResult = new StreamResult(System.out);
tTransformer.transform(tDOMSource, tResult);
}大家给点一件
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货