java xml字符串解析

  • 需求 :遍历 AAAA和BBBB
    https://segmentfault.com/q/10100000193411383
    https://blog.csdn.net/hellow_world_/article/details/102696623
<?xml version="1.0" encoding="UTF-8"?>
<!--Generated by Oracle Analytics Publisher -Dataengine, datamodel:_SYNC_DATA_CM_ITEM_xdm -->
<DATA_DS>
	<FROMDATE>2022-08-10T18:34:35.000+08:00</FROMDATE>
	<TODATE>2022-09-22T22:26:45.000+08:00</TODATE>
	<AAAA>
		<ITEM_NUMBER>A10010006</ITEM_NUMBER>
		<ACD_TYPE>PROD</ACD_TYPE>
		<LOT_CONTROL_CODE>1</LOT_CONTROL_CODE>
	</AAAA>
	<AAAA>
		<PRIMARY_UOM_CODE>PCS</PRIMARY_UOM_CODE>
		<ACD_TYPE>PROD</ACD_TYPE>
		<LOT_CONTROL_CODE>1</LOT_CONTROL_CODE>
	</AAAA>
	<BBBB>
		<DESCRIPTION>UPS系统成品-集装箱系统</DESCRIPTION>
	</BBBB>
	<BBBB>
		<DESCRIPTION>UPS系统成品-集装箱系统</DESCRIPTION>
	</BBBB>
	<BBBB>
		<DESCRIPTION>UPS系统成品-集装箱系统</DESCRIPTION>
	</BBBB>
</DATA_DS>
@Test
    public void test03() throws DocumentException {
        String xmlString = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
                "<!--Generated by Oracle Analytics Publisher -Dataengine, datamodel:_SYNC_DATA_CM_ITEM_xdm -->\n" +
                "<DATA_DS>\n" +
                "\t<FROMDATE>2022-08-10T18:34:35.000+08:00</FROMDATE>\n" +
                "\t<TODATE>2022-09-22T22:26:45.000+08:00</TODATE>\n" +
                "\t<AAAA>\n" +
                "\t\t<ITEM_NUMBER>A10010006</ITEM_NUMBER>\n" +
                "\t\t<ACD_TYPE>PROD</ACD_TYPE>\n" +
                "\t\t<LOT_CONTROL_CODE>1</LOT_CONTROL_CODE>\n" +
                "\t</AAAA>\n" +
                "\t<AAAA>\n" +
                "\t\t<PRIMARY_UOM_CODE>PCS</PRIMARY_UOM_CODE>\n" +
                "\t\t<ACD_TYPE>PROD</ACD_TYPE>\n" +
                "\t\t<LOT_CONTROL_CODE>1</LOT_CONTROL_CODE>\n" +
                "\t</AAAA>\n" +
                "\t<BBBB>\n" +
                "\t\t<DESCRIPTION>UPS系统成品-集装箱系统</DESCRIPTION>\n" +
                "\t</BBBB>\n" +
                "\t<BBBB>\n" +
                "\t\t<DESCRIPTION>UPS系统成品-集装箱系统</DESCRIPTION>\n" +
                "\t</BBBB>\n" +
                "\t<BBBB>\n" +
                "\t\t<DESCRIPTION>UPS系统成品-集装箱系统</DESCRIPTION>\n" +
                "\t</BBBB>\n" +
                "</DATA_DS>";

        System.out.println(xmlString);
        System.out.println("----------------");

        //将给定的String文本解析为XML文档并返回新创建的document
        org.dom4j.Document document = DocumentHelper.parseText(xmlString);
        //获取根节点,在例子中就是responsedata节点
        Element roots = document.getRootElement();

        //遍历某个子节点,如resultcode
        for (Iterator i = roots.elementIterator("AAAA"); i.hasNext(); ) {
            Element next = (Element) i.next();
            List<Element> elements = next.elements();
            System.out.println("----------------");
            for (int j = 0; j < elements.size(); j++) {

                Element subChild = (Element) elements.get(j);
                System.out.println(subChild.getName() + ":" + subChild.getText());
            }
        }

        for (Iterator i = roots.elementIterator("BBBB"); i.hasNext(); ) {
            Element next = (Element) i.next();
            List<Element> elements = next.elements();
            System.out.println("----------------");
            for (int j = 0; j < elements.size(); j++) {

                Element subChild = (Element) elements.get(j);
                System.out.println(subChild.getName() + ":" + subChild.getText());
            }
        }

        //遍历某个子节点,如resultcode
        /*for (Iterator i = roots.elementIterator("resultcode"); i.hasNext(); ) {
            Element next = (Element) i.next();

            Element users_id = next.element("users_id");
            Element users_name = next.element("users_name");
            Element users_group = next.element("users_group");
            Element users_address = next.element("users_address");
            System.out.println(users_id.getData());
            System.out.println(users_name.getData());
            System.out.println(users_group.getData());
            System.out.println(users_address.getData());
        }*/

    }

在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值