要将XML字符串转换为Map对象,可以使用Java中的DOM解析器来解析XML,并将解析结果存储在Map对象中。以下是一个示例代码:

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import java.io.ByteArrayInputStream;
import java.util.HashMap;
import java.util.Map;

public class XmlToMap {
    public static void main(String[] args) {
        String xml = '<root><name>John</name><age>30</age></root>';
        Map<String, String> map = xmlToMap(xml);
        System.out.println(map);
    }

    public static Map<String, String> xmlToMap(String xml) {
        Map<String, String> map = new HashMap<>();

        try {
            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
            DocumentBuilder builder = factory.newDocumentBuilder();
            Document document = builder.parse(new ByteArrayInputStream(xml.getBytes()));

            Element root = document.getDocumentElement();
            NodeList nodeList = root.getChildNodes();

            for (int i = 0; i < nodeList.getLength(); i++) {
                Node node = nodeList.item(i);
                if (node.getNodeType() == Node.ELEMENT_NODE) {
                    String key = node.getNodeName();
                    String value = node.getTextContent();
                    map.put(key, value);
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

        return map;
    }
}

在上面的代码中,我们首先定义了一个xmlToMap方法,该方法接受一个XML字符串作为输入,并返回一个Map对象。

在方法中,我们使用DocumentBuilderFactoryDocumentBuilder来创建一个DOM解析器,并使用parse方法解析XML字符串。然后,我们获取XML的根元素,并遍历其子节点。对于每个元素节点,我们获取其节点名称和文本内容,并将其存储在Map对象中。

最后,我们调用xmlToMap方法,将XML字符串转换为Map对象,并输出结果。运行代码,将会得到如下输出:

{age=30, name=John}
Java XML字符串转Map对象教程:使用DOM解析器

原文地址: https://www.cveoy.top/t/topic/pcwu 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录