Java读取XML文件(解组)

示例

读取以UserDetails.xml以下内容命名的XML文件

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user>
    <name>Jon Skeet</name>
    <userID>8884321</userID>
</user>

我们需要一个名为User.java如下的POJO类

import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
public class User {

    private long userID;
    private String name;
}

在这里,我们根据XML节点创建了变量和类名。要映射它们,我们XmlRootElement在类上使用注释。

public class XMLReader {
    public static void main(String[] args) {
        try {
            User user = JAXB.unmarshal(new File("UserDetails.xml"), User.class);
            System.out.println(user.getName());   // 打印 Jon Skeet
            System.out.println(user.getUserID()); // 印刷品8884321
        } catch (Exception e) {
            System.err.println("读取XML时发生异常!");
        }
    }
}

这里的unmarshal()方法用于解析XML文件。它以XML文件名和类类型为两个参数。然后,我们可以使用对象的getter方法来打印数据。