zoukankan      html  css  js  c++  java
  • Java 创建xml文件和操作xml数据

    java中的代码

    import java.io.File;
    import java.io.StringWriter;
    
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.transform.Transformer;
    import javax.xml.transform.TransformerConfigurationException;
    import javax.xml.transform.TransformerException;
    import javax.xml.transform.TransformerFactory;
    import javax.xml.transform.dom.DOMSource;
    import javax.xml.transform.stream.StreamResult;
    
    import org.w3c.dom.Document;
    import org.w3c.dom.Element;
    
    
    public class CreateXML {
    
        public static void main(String[] args) {
            
            try {
                //创建xml文件。DOM方式
                DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
                DocumentBuilder builder=factory.newDocumentBuilder();
                Document document=builder.newDocument();
                //添加根元素,指定标签
                Element root=document.createElement("books");
                //给根元素添加属性值
                root.setAttribute("id", "aaa");
                
                
                //创建一个子标签
                Element book1=document.createElement("book");
                book1.setAttribute("id", "1");
                //再创建下一级的子标签
                Element name1=document.createElement("name");
                Element price1=document.createElement("price");
                //设定标签内的内容
                name1.setTextContent("小说");
                price1.setTextContent("100元");
                //把子标签添加到上一级标签,appendChild方法
                book1.appendChild(name1);
                book1.appendChild(price1);
                
                
                //复制以上代码,把节点填充完
                Element book2=document.createElement("book");
                book2.setAttribute("id", "2");
                Element name2=document.createElement("name");
                Element price2=document.createElement("price");
                name2.setTextContent("杂志");
                price2.setTextContent("200元");
                book2.appendChild(name2);
                book2.appendChild(price2);
                
                Element book3=document.createElement("book");
                book3.setAttribute("id", "3");
                Element name3=document.createElement("name3");
                Element price3=document.createElement("price3");
                name3.setTextContent("课本");
                price3.setTextContent("300元");        
                book3.appendChild(name3);
                book3.appendChild(price3);
                    
                root.appendChild(book1);
                root.appendChild(book2);
                root.appendChild(book3);
                document.appendChild(root);//最后一步
                //文档内容创建完毕,下面是输出文档
                TransformerFactory transformerFactory =TransformerFactory.newInstance();
                Transformer transformer1=transformerFactory.newTransformer();
                StringWriter writer=new  StringWriter();
                transformer1.transform(new DOMSource(document), new StreamResult(writer));
                System.out.println(writer.toString());//成功输出,可以复制
                //直接生成xml文件
                transformer1.transform(new DOMSource(document), new StreamResult(new File("newxml.xml")));
                
            } catch (ParserConfigurationException e) {
                e.printStackTrace();
            } catch (TransformerConfigurationException e) {
                // TODO 自动生成的 catch 块
                e.printStackTrace();
            } catch (TransformerException e) {
                // TODO 自动生成的 catch 块
                e.printStackTrace();
            }
                
                
                
            }
    
    }

    生成的xml文件代码

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <books id="aaa">
    <book id="1">
    <name>小说</name>
    <price>100元</price>
    </book>
    <book id="2">
    <name>杂志</name>
    <price>200元</price>
    </book>
    <book id="3">
    <name3>课本</name3>
    <price3>300元</price3>
    </book>
    </books>

  • 相关阅读:
    asp.net自动将页面中的所有空间置为不可用以及将所有文本框置空
    在<img src="..." title="..."> 中使title的内容换行的方法
    div 遮罩层 弹窗
    Asp.net工作流workflow实战之工作流持久化(五)
    Asp.net工作流workflow实战之给书签命名(四)
    Asp.net工作流workflow实战之工作流启动与继续(三)
    被废弃的 Thread.stop, Thread.suspend, Thread.resume 和Runtime.runFinalizersOnExit
    JAVA核心:内存、比较和Final
    redis AOF保存机制
    JAVA CAS原理浅谈
  • 原文地址:https://www.cnblogs.com/275147378abc/p/5213397.html
Copyright © 2011-2022 走看看