demo4j生成字符串xml和解析xml

前端之家收集整理的这篇文章主要介绍了demo4j生成字符串xml和解析xml前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
//拼接XML
Document document = DocumentHelper.createDocument();
Element root = document.addElement("root");
Element data = root.addElement("data");
data.addAttribute("class","map");
Element username = data.addElement("username").addText(loginid);
Element password = data.addElement("password").addText(password_gd);
Element list = data.addElement("list").addAttribute("class","list");
for (int i = 0; i <xzcflist.size(); i++) {
Element obj = list.addElement("obj");
obj.addElement("cfwsh").addText(xzcflist.get(i).getCfWsh());
obj.addElement("cfcfmc").addText(xzcflist.get(i).getCfCfmc());

}
//System.out.println(document.asXML());

Object[] tokens = client.invoke("xzcfDataReport",new Object[] {document.asXML()});

//解析xml字符串
public List<Integer> jxXml(Object tokens)
{
List<Integer> sblist=new ArrayList<Integer>();
Document doc = null;
try {
doc = DocumentHelper.parseText(tokens.toString());
Element root = doc.getRootElement();// 指向根节点
Element normal = root.element("data");
Element failsRecord= normal.element("failsRecord");// 所有的Item节点
List<Element> lstData=failsRecord.elements("item");
for (int i = 0; i < lstData.size(); i++) {
Element etime = (Element) lstData.get(i);
System.out.println(Integer.parseInt(etime.attribute("index").getText()));
sblist.add(Integer.parseInt(etime.attribute("index").getText()));
}
} catch (DocumentException e) {
e.printStackTrace();
}
return sblist;
}

生成的xml


<?xml version="1.0" encoding="UTF-8"?>

<root>

<data class=”map”>

<username>test</username>

<password >0c5233c74cbdf474e065257867e4d733</password>

<list class=”list”>

<obj>

<xkwsh>行政许可决定书文号</xkwsh>

<xkxmmc>项目名称</xkxmmc>

<xksplb>审批类别</xksplb>

<xknr>许可内容</xknr>

<xkxdr>行政相对人名称</xkxdr>

<xkxdrshxym>统一社会信用代码</xkxdrshxym>

<xkxdrzdm>组织机构代码</xkxdrzdm>

<xkxdrgsdj>工商登记码</xkxdrgsdj>

<xkxdrswdj>税务登记号</xkxdrswdj>

<xkxdrsfz>居民身份证号</xkxdrsfz>

<xkfr>法定代表人姓名</xkfr>

<xkjdrq>许可决定日期</xkjdrq>

<xkjzq>许可截止期</xkjzq>

<xkxzjg>许可机关</xkxzjg>

<xkzt>当前状态</xkzt>

<xkdfbm>地方编码</xkdfbm>

<sjc>数据更新时间戳</sjc>

<bz>备注</bz>

</obj>

<obj></obj>

<obj></obj>

……

</list>

</data>

</root>




解析的xml

<?xml version="1.0" encoding="UTF-8"?>

<root>

<data>

<code> 44030</code>

<desc>数据部分上报成功,还有部分错误数据</desc>

<failcount>1</failcount>

<insertcount>0</insertcount>

<updatecount>1</updatecount>

<text>

本次上报2条数据,新增0条,更新1条,失败1

2016-6-3 17:04:08:记录第2条,未导入成功(“行政许可决定书文号”您填写的数据不能为空,如前置许可无决定文书号,此处填文字“空”;为了提高数据的质量,请按照文档要求的数据格式上传数据,谢谢!)

</text>

<failsRecord>

<item index=’2’reason=’“行政许可决定书文号”您填写的数据不能为空,如前置许可无决定文书号,此处填文字“空”;’/>

</failsRecord>

</data>

</root>

猜你在找的XML相关文章