zoukankan      html  css  js  c++  java
  • java-w3c.document生成xml文件

    案例

        /**
         * 创建和写入xml
         * @param xmlrootname
         * @param waitConverList
         */
        private void createAndWriterXML(String xmlrootname,Map<String ,BaseModel> waitConverList){
            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<String,TableXml> 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<String, Object> map = ConverUtils.converBeanToMap(baseModel);
                
                Element item = document.createElement(xml.getValue());  
                root.appendChild(item);
                if( map != null && map.size()>0 ){
                    Map<String,String> 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 = new DOMSource(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 = new StreamResult(pw);  
                transformer.transform(source, result);     //关键转换  
            } catch (Exception e) {  
                e.printStackTrace();
            }  
            
        }
        
  • 相关阅读:
    【机器学习】浅谈协方差
    python {}.format
    【机器学习】准确率、精确率、召回率
    【声纹识别】 EER
    【机器学习】 最形象的入门
    逻辑卷-LVM
    RAID及软RAID的实现
    输入数字or 字符串,统计重复次数---字典统计练习
    Python-数据结构之dict(字典*****)
    POJ 3204 网络流的必须边
  • 原文地址:https://www.cnblogs.com/hwaggLee/p/5807194.html
Copyright © 2011-2022 走看看