//签名文件
public File createXml_p(String name,String certSN,String signatureValue){
try{
//1.创建document对象
Document document = DocumentHelper.createDocument();
//2.创建根节点
Element root = document.addElement("Signature");
root.addAttribute("xmlns:xs", "http://www.w3.org/2001/XMLSchema");
Element EBDVersion = root.addElement("Version");
EBDVersion.addText("1");
Element RelatedEBD = root.addElement("RelatedEBD");
Element EBDID = RelatedEBD.addElement("EBDID");
EBDID.addText(name);//加密文件名
Element CertSN = root.addElement("CertSN");
CertSN.addText(certSN);//每个地区证书
Element SignatureAlgorithm = root.addElement("SignatureAlgorithm");
SignatureAlgorithm.addText("SM2-SM3");
Element SignatureValue = root.addElement("SignatureValue");
SignatureValue.addText(signatureValue);//签名
// 5、设置生成xml的格式
OutputFormat format = OutputFormat.createPrettyPrint();
// 设置编码格式
format.setEncoding("UTF-8");
// 6、生成xml文件
File file = new File("D:/test"+"/EBDS_EBDB_"+name +".xml");
XMLWriter writer = new XMLWriter(new FileOutputStream(file), format);
// 设置是否转义,默认使用转义字符
writer.setEscapeText(false);
writer.write(document);
writer.close();
System.out.println("生成应急广播签名文件成功");
return file;
}catch(Exception e){
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}