使用DOM解析xml文件
程序员文章站
2022-07-10 20:50:33
使用DOM解析xml文件 要解析的xml文件如下: 解析xml的代码如下: 基本步骤差不多就是: 首先是先获得根元素 然后getElementByTagName()获得相应标签的node集合 通过集合,如list中的item()获得集合中的具体元素 最后根据getTextContent()获得具体元 ......
使用DOM解析xml文件
要解析的xml文件如下:
<?xml version="1.0" encoding="UTF-8"?> <Languages cat="it"> <lan id="1"> <name>java</name> <ide>Eclipse</ide> </lan> <lan id="2"> <name>Swift</name> <ide>Xcode</ide> </lan> <lan id="3"> <name>C#</name> <ide>Visual Studio</ide> </lan> </Languages>
解析xml的代码如下:
public class Dealxml { public static void main(String[] args) { DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance(); try { DocumentBuilder builder=factory.newDocumentBuilder(); Document document=builder.parse(new File("language.xml")); //获取xml的根元素 Element root=document.getDocumentElement(); System.out.println("cat="+root.getAttribute("cat")); NodeList nlist=root.getElementsByTagName("lan"); for(int i=0;i<nlist.getLength();i++){ System.out.println("-----------------"); Element lan=(Element) nlist.item(i); System.out.println("id="+lan.getAttribute("id")); NodeList clist=lan.getChildNodes(); for(int j=0;j<clist.getLength();j++){ Node c= clist.item(j); if(c instanceof Element){ System.out.println(c.getNodeName()+"="+c.getTextContent()); } } } } catch (ParserConfigurationException e) { e.printStackTrace(); } catch (SAXException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
基本步骤差不多就是:
首先是先获得根元素
然后getElementByTagName()获得相应标签的node集合
通过集合,如list中的item()获得集合中的具体元素
最后根据getTextContent()获得具体元素的文本内容
备注:在最后加上判断是否为Element对象的操作,是因为xml文件中的缩进空格这些会被视为一个空节点输出,所以要加上一个判断
上一篇: 人工智能树立三观第一步:饱读诗书
推荐阅读
-
mybatis 的 dao 接口跟 xml 文件里面的 sql 是如何建立关系的?一步步解析
-
JAVA中4种解析XML文件的方法
-
python使用pdfminer解析pdf文件的方法示例
-
Python通过DOM和SAX方式解析XML的应用实例分享
-
php 使用expat方式解析xml文件操作示例
-
Python minidom模块用法示例【DOM写入和解析XML】
-
Python中使用SAX解析xml实例
-
Python解析xml中dom元素的方法
-
C#中使用XmlDocument类来创建和修改XML格式的数据文件
-
SQLSERVER 2005中使用sql语句对xml文件和其数据的进行操作(很全面)