Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java 解析xml

作者:叶随雨落   发布日期:2026-01-01   浏览:58

import org.w3c.dom.*;
import javax.xml.parsers.*;
import java.io.*;

public class ParseXML {
    public static void main(String[] args) {
        try {
            // 创建一个DocumentBuilderFactory对象
            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
            // 创建一个DocumentBuilder对象
            DocumentBuilder builder = factory.newDocumentBuilder();
            // 解析XML文件并返回一个Document对象
            Document document = builder.parse(new File("example.xml"));

            // 获取文档的根元素
            Element root = document.getDocumentElement();
            System.out.println("Root element: " + root.getNodeName());

            // 获取所有的"employee"元素
            NodeList nodeList = document.getElementsByTagName("employee");

            // 遍历所有"employee"元素
            for (int i = 0; i < nodeList.getLength(); i++) {
                Node node = nodeList.item(i);
                if (node.getNodeType() == Node.ELEMENT_NODE) {
                    Element element = (Element) node;
                    // 获取员工的id属性
                    String id = element.getAttribute("id");
                    // 获取员工的名字
                    String name = element.getElementsByTagName("name").item(0).getTextContent();
                    // 获取员工的职位
                    String position = element.getElementsByTagName("position").item(0).getTextContent();

                    // 打印员工信息
                    System.out.println("ID: " + id);
                    System.out.println("Name: " + name);
                    System.out.println("Position: " + position);
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

解释说明:

  1. 导入必要的包:我们导入了org.w3c.dom.*javax.xml.parsers.*java.io.*,这些包提供了解析XML文件所需的功能。
  2. 创建DocumentBuilderFactory对象:用于创建DocumentBuilder实例。
  3. 创建DocumentBuilder对象:用于解析XML文件。
  4. 解析XML文件:通过builder.parse()方法解析XML文件,并返回一个Document对象。
  5. 获取根元素:通过document.getDocumentElement()方法获取XML文档的根元素。
  6. 获取所有"employee"元素:通过document.getElementsByTagName("employee")方法获取所有名为"employee"的元素。
  7. 遍历所有"employee"元素:使用for循环遍历每个employee元素,并提取其属性和子元素的内容。
  8. 打印员工信息:将提取到的信息打印出来。

请确保在运行此代码之前,有一个名为example.xml的XML文件存在于当前目录中。该文件应该包含类似于以下内容的结构:

<company>
    <employee id="1">
        <name>John Doe</name>
        <position>Developer</position>
    </employee>
    <employee id="2">
        <name>Jane Smith</name>
        <position>Manager</position>
    </employee>
</company>

上一篇:java dto

下一篇:java读取excel的数据

大家都在看

java url decode

java判断是windows还是linux

java连接数据库的代码

java date类型比较大小

java djl

ubuntu 卸载java

es java api

java读取excel中的图片

java新建

java base64 加密

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站