java document to xml_java-w3c.document生成xml文件

/*** 创建和写入xml

*@paramxmlrootname

*@paramwaitConverList*/

private void createAndWriterXML(String xmlrootname,MapwaitConverList){

DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();

DocumentBuilder builder= null;try{

builder=factory.newDocumentBuilder();

}catch(ParserConfigurationException e) {

e.printStackTrace();

}if( builder == null ) return;

Document document=builder.newDocument();

Element root= document.createElement(xmlrootname); //创建根节点

document.appendChild(root);

Map xmlTableMap =InitTableInfo.getXmlTableMap();for(String tablename: waitConverList.keySet()) {

TableXml xml=xmlTableMap.get(tablename);if(xml == null )continue;

BaseModel baseModel=waitConverList.get(tablename);if( baseModel == null )continue;

HashMap map =ConverUtils.converBeanToMap(baseModel);

Element item=document.createElement(xml.getValue());

root.appendChild(item);if( map != null && map.size()>0){

Map columnMap =xml.getColumnMap();for(String key : columnMap.keySet()) {if(StringUtils.isBlank(key))continue;

Element childItem=document.createElement(columnMap.get(key));

Object ob=map.get(key.toUpperCase());

childItem.appendChild(document.createTextNode(ob==null?"":ob.toString()));

item.appendChild(childItem);

}

}

}//将DOM对象document写入到xml文件中

TransformerFactory tf =TransformerFactory.newInstance();try{

Transformer transformer=tf.newTransformer();

DOMSource source= newDOMSource(document);

transformer.setOutputProperty(OutputKeys.ENCODING,"UTF-8");

transformer.setOutputProperty(OutputKeys.VERSION,"1.0");

transformer.setOutputProperty(OutputKeys.INDENT,"yes");

PrintWriter pw= new PrintWriter(new FileOutputStream("C:\\Users\\huage\\Desktop\\o\\"+xmlrootname+".xml"));

StreamResult result= newStreamResult(pw);

transformer.transform(source, result);//关键转换

} catch(Exception e) {

e.printStackTrace();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值