Xstream 解析xml文件内容

Posted SheaChen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Xstream 解析xml文件内容相关的知识,希望对你有一定的参考价值。

刚刚接手的一个项目,接到一个对接用户数据的需求,对方使用的是xml格式来传输文件,特此记下解析该类文件的方法

public interface XmlResolver<T> {
    XStream builder();

    default T parse(String xml){
        return (T) builder().fromXML(xml);
    }

    default T resolver(String xml){
        return parse(xml);
    }
}
    //测试类
public class TestMain {

    private String name;
    private String address;
    private List<TestPerson> personList;

    public static void main(String[] args) {
        XmlResolver<TestMain> testMainXmlResolver = () -> {
            {
                XStream xStream = new XStream();
                xStream.alias("GetInvoiceResult", TestMain.class);
                xStream.alias("ItemRecord", TestPerson.class);
                return xStream;
            }
        };

       String xml = "<GetInvoiceResult>\n" +
                "        <name>string</name>\n" +
                "        <address>string</address>\n" +
                "        <personList>\n" +
                "          <ItemRecord>\n" +
                "            <name>string</name>\n" +
                "            <age>string</age>\n" +
                "          </ItemRecord>\n" +
                "          <ItemRecord>\n" +
                "            <name>string</name>\n" +
                "            <age>string</age>\n" +
                "          </ItemRecord>\n" +
                "        </personList>\n" +
                "      </GetInvoiceResult>\n"
                ;
        TestMain testMain = testMainXmlResolver.parse(xml);
        System.out.println(testMain);
    }
}

以上是关于Xstream 解析xml文件内容的主要内容,如果未能解决你的问题,请参考以下文章

XStream解析xml代码

同问Xstream解析XML文件的问题

XStream xml 解析框架使用笔记

谁用过Xstream 用其生成带有cdata标签的xml解析带有cdata标签的xml

XStream解析XML文本并用反射机制转换为对象

微信公众号xml数据解析之xstream