亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Java眼中的XML 文件寫入

難度初級
時長 2小時 0分
學習人數
綜合評分9.67
227人評價 查看評價
9.8 內容實用
9.7 簡潔易懂
9.5 邏輯清晰
  • 7、利用handler對象進行xml文件內容的編寫

    //打開document

    handler.startDocument();

    AttributesImpl attr = new AttributesImpl();

    handler.startElement("", "", "bookstore", attr);

    attr.clear;

    attr.addAttribute("","","id","","1");

    handler.startElement("","","book","attr");

    handler.endElement("", "", "bookstore");

    //關閉document

    handler.endDocument();


    查看全部
  • 2-1 創建根節點和 book 節點屬性

    1、新建DOM樹newDocument

    2、創建根節點createElement

    3、把根節點添加到DOM樹中appendChild

    4、創建子節點

    5、把子節點添加到根節點中

    6、添加屬性setAttribute

    注:

    1、實際代碼編寫順序,先全部創建完,再一起添加

    2、屬性不需要創建,直接添加


    查看全部
  • 四種生成xml方式對比:

    DOM:基于tree

    SAX:基于事件,不可向已生成xml文件添加結點

    JDOM、DOM4J:基于底層API

    查看全部
  • JDOM設置XML格式:

    Format format=Format.getCompactFormat();//創建Format對象,設置生成xml文檔格式

    format.setIndent(String index)l//設置換行

    faomat.setEncoding(String encoding);//設置文檔編碼格式

    查看全部
  • 生成子節點:Element channel=new Element("channel");

    rss.addContent(channel);//添加channel結點到根節點

    Element title=new Element("title");

    title.setText("國內最新新聞");//設置結點文本內容

    channel.addContent(title);//添加title結點到channel結點


    查看全部
  • //生成根節點

    Element rss=new Element("rss");

    //為根節點屬性,參數設置屬性名和屬性值

    rss.setAttribute("version","2.0");

    //生成一個document對象,含有一個根節點對象

    Document document=new Document(rss);

    //創建XMLOutputter對象

    XMLOutputter outputer=new XMLOutputter();

    //利用output將document對象轉換為xml文檔

    outputer.output(document, new FileOutputStream(new File("rssnews.xml")));


    查看全部
  • 定義是否需要將特殊字符轉義:writer.setEscapeText(false);//默認為true

    查看全部
    0 采集 收起 來源:處理轉義字符

    2018-07-29

  • 設置生成xml的格式:OutputFormat format=OutputFormat.createPrettyPrint();

    設置編碼:format.setEncoding(String encoding);

    可在生成xml文件時加入格式:XMLWriter writer=new XMLWriter(new FileOutputStream(new File(String fileName)),format);

    查看全部
  • 生成根節點和屬性:

    創建document對象,代表整個xml文檔:Document document=DocumentHelper.createDocument();

    創建根節點:Element rss=document.addElement("rss");

    添加屬性:rss.addAttribute(String arg0,String arg1);

    生成子節點和內容:Element channel=rss.addElement("channel");

    Element title=channel.addElement("title");

    設置文字內容:title.setText(String arg0);

    生成xml文件:XMLWriter writer=new XMLWriter(new FileOutputStream(new File("rssnews.xml")));

    writer.write(docment);

    writer.close();

    查看全部
  • 創建AttributesImpl對象用于創建屬性:AttributeImpl attr=new AttributeImpl();

    添加屬性:attr.addAttribute(String uri,String localName,String qName,String type,String value);//名稱空間 URI,本地名稱,限定(加前綴的)名稱,字符串形式的屬性類型,屬性值

    清空已有屬性:attr.clear();

    查看全部
  • 生成子節點及節點屬性:

    利用TransformerHandler對象進行XML文件進行設置:

    TransformerHandler handler=SAXTransformerFactor.newInstance().newTransformerHndler();

    打開document:handler.startDocument();

    對Xml文件的格式設置需放在最開始。

    設置結點及其屬性:handler.startElement(String uri,String localName,String qName,Attributes atts);//

    uri-名稱空間 URI,如果元素沒有名稱空間 URI,或者未執行名稱空間處理,則為空字符串

    localName - 本地名稱(不帶前綴),如果未執行名稱空間處理,則為空字符串

    qName - 限定名(帶有前綴),如果限定名不可用,則為空字符串

    atts - 連接到元素上的屬性。如果沒有屬性,則它將是空 Attributes 對象。在 startElement 返回后,此對象的值是未定義的?

    設置屬性的文本內容:handler.characters(char[] ch,int start,int length);//ch來自 XML 文檔的字符,start數組中的開始位置,length從數組中讀取的字符的個數

    關閉結點:handler.endElement(String uri,String localName,String qName);

    關閉document:handler.endDocument();


    查看全部
  • 創建一個SAXTransformerFactory對象:SAXTransformerFactory tff=(SAXTransformerFactory)SAXTransformerFactory.newInstance();

    創建TransformerHandler對象:TransformerHandler handler=tff.newTransformerHandler();

    創建Transformer對象:Transformer tf=handler.getTransformer();

    設置Transformer對象生成XML文件格式:tr.setOutputProperty(String name,String value);

    將XML文件與handler對象關聯:handler.setResult(new StreamResult(new FileOutputStream(File file)));

    查看全部
  • 生成節點間的文本:Element name=document.creatElement("name");

    name.setTextContent("小王子");

    可設置xml文件是否有DTD、Schema約束:document.setXnlStandalone(true);//不含DTD、Schema約束

    查看全部
  • 創建Transformer對象:Transformer tf=TransformerFactory.newInstance().newTransformer();

    設置輸出屬性,指定了輸出屬性名稱的非 null String,它可以是名稱空間限定的:tf.setOutputProperty(String name,String value);

    通過transform方法將Document對象轉化為Xml文件:tf.transform(new DOMSourse(document),new StreamResult(new File(String fileName)));

    查看全部
    0 采集 收起 來源:創建 XML 文件

    2018-07-28

  • 創建DocumentBuilder對象:DocumentBuilder db=new DocumentBuilderFactory.newInstance().newDocumentBuilder();

    創建Document對象:Document document=db.newDocument();

    創建節點:Element element=document.createElement(String tagName);

    添加結點:document.appendChild(Node newNode);

    添加屬性:element.setAttribute(String name,String value);

    查看全部

舉報

0/150
提交
取消
課程須知
本課程是 Java 的中級課程,需要各位小伙伴們熟悉 Java 面向對象的思想,并能熟練掌握 Java I/O 的相關知識。對什么是XML,如何讀取XML有疑惑的小伙伴們,可以先去學習《Java眼中的XML---文件讀取》進修。
老師告訴你能學到什么?
1、通過DOM方式生成xml文檔 2、通過SAX方式生成xml文檔 3、通過DOM4J方式生成xml文檔 4、通過JDOM方式生成xml文檔 5、不同生成方法大PK

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!