摘要:
1.在某些业务中需要使用JAVA按照规定生成固定XML格式文件,本文中根据相应的业务生成固定的XML格式文件,并且通过测试可以发送。
2.下面代码根据dom4j生成xml格式文件
代码思路:
1.创建对应的document 。
2.创建命名空间。
3.根据规定的命名空间赋值。
4.如果命名空间中有多个,需要赋值多个命名空间如下图命名空间
5.创建根节点。
6.创建根节点下标签,并赋值。
7.以此类推直至创建完成所有节点。
8.格式化并打印对象。
9.创建文件输出流,这时候会有异常。需要catch。
10.创建xml对象,并且把输出流和创建的对象放入。会有异常。需要catch。
11.把document对象输出。会有异常。需要catch。
代码片段:
public boolean A(参数1,……){
Document document = DocumentHelper.createDocument();//创建document
Namespace na = Namespace.get("");//创建命名空间
na = new Namespace (xxxxxxxxxxxxxxxxxxxxx);//命名空间赋值
Element root= document.addElement(new QName(“A”,na));//第一个命名空间名称+值
root.addAttribute("B","123456");//假设命名空间中有两个,这是第二个命名空间值
Element el = el.addElement("Head");//创建第一个根节点名称
el.addElement("C").setText("你好");//创建根节点下标签并赋值
……; //以此类推,直至创建完成所有节点
try{
OutputFormat format = OutputFormat.createPrettyPrint();//创建格式化并打印对象
FileOutputStream fileOutputStream = new FileOutputStream ("D:\\cc\\send.xml");//创建文件输出流(会有异常)
XMLWriter xmlWriter = new XMLWriter(fileOutputStream,format);//创建xml输出对象,放到输出流和格式化
xmlWriter.write(document);;//把document对象输出,有异常
xmlWriter.close();//关闭
}catch(FileNotFoundException e){
e.printStackTrace();
return false;
}
catch(UnsupportedEncodingException e){
e.printStackTrace();
return false;
}
catch(IOException e){
e.printStackTrace();
return false;
}
return true;
}
生成效果(部分截图,因涉及到内容无法全部截图并且标签遮挡,请见谅):