射精一区欧美专区|国产精品66xx|亚洲视频一区导航|日韩欧美人妻精品中文|超碰婷婷xxnx|日韩无码综合激情|特级黄片一区二区|四虎日韩成人A√|久久精品内谢片|亚洲成a人无码电影

您現(xiàn)在的位置:首頁 > IT認(rèn)證 > JAVA >

java中xml解析器的應(yīng)用實例


java中xml解析器的應(yīng)用實例

 xml解析中,通常大家讀文件,解析的時候沒有問題,但是在寫文件的時候常常會碰到亂碼等問題,就我的個人體會是一般只要在寫文件的時候采用文件流的形式,設(shè)置好當(dāng)前的編碼方式,通常就會避免此類問題的發(fā)生!下面有兩個簡單的分別是采用jdom和dom4j實現(xiàn)的例子:

    1、dom4j

    package org.lyj.xml;

    import java.io.OutputStream;

    import java.io.UnsupportedEncodingException;

    import org.dom4j.Document;

    import org.dom4j.Element;

    import java.io.FileWriter;

    import org.dom4j.io.OutputFormat;

    import org.dom4j.Namespace;

    import org.dom4j.io.XMLWriter;

    import java.io.File;

    import java.io.IOException;

    import org.dom4j.DocumentHelper;

    /**

    *

Title:

    *

    *

Description:

    *

    *

Copyright: Copyright (c) 2005

    *

    *

Company:

    *

    * @author not attributable

    * @version 1.0

    */

    public class Dom4jTest {

    public void generateDocument() {

    org.dom4j.DocumentFactory df = new org.dom4j.DocumentFactory();

    Document document = df.createDocument();//.createDocument();

    Element catalogElement = document.addElement("catalog");

    catalogElement.addComment("An XML Catalog");

    catalogElement.addProcessingInstruction("target", "text");

    Element journalElement = catalogElement.addElement("journal");

    journalElement.addAttribute("title", "XML Zone");

    journalElement.addAttribute("publisher", "IBM developerWorks");

    Element articleElement = journalElement.addElement("article");

    articleElement.addAttribute("level", "Intermediate");

    articleElement.addAttribute("date", "December-2001");

    Element titleElement = articleElement.addElement("title");

    titleElement.setText("Java configuration with XML Schema");

    Element authorElement = articleElement.addElement("author");

    Element firstNameElement = authorElement.addElement("錄音機(jī)");

    firstNameElement.setText("Marcello");

    Element lastNameElement = authorElement.addElement("劉");

    lastNameElement.setText("Vitaletti");

    document.addDocType("catalog",

    null, "file://c:/Dtds/catalog.dtd");

    document.setXMLEncoding("gb2312");

    try {

    OutputFormat of = OutputFormat.createCompactFormat();

    of.setEncoding("gb2312");

    XMLWriter output = new XMLWriter(

    new java.io.FileOutputStream(new File("c:/catalog/catalog.xml")),of);

    output.write(document);

    output.close();

    } catch (IOException e) {

    System.out.println(e.getMessage());

    }

    }

    public static void main(String[] argv) {

    Dom4jTest dom4j = new Dom4jTest();

    dom4j.generateDocument();

    }

    }

2、jdom

package org.lyj.xml;

import org.jdom.output.Format;

import org.jdom.Document;

import java.io.IOException;

import org.jdom.input.SAXBuilder;

import org.jdom.output.XMLOutputter;

import org.jdom.JDOMException;

/**

*

Title:


*

*

Description:


*

*

Copyright: Copyright (c) 2005


*

*

Company:


*

* @author not attributable

* @version 1.0

*/

public class JdomWriter {

public JdomWriter() {

}

public void write(){

try {

SAXBuilder builder = new SAXBuilder();

Document doc = builder.build("aa.xml");

XMLOutputter outputter = new XMLOutputter(Format.getPrettyFormat()。setEncoding("utf-8"));

outputter.output(doc, new java.io.FileOutputStream("bb.xml"));

} catch (JDOMException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

}

public static void main(String args[]){

JdomWriter jd = new JdomWriter();

jd.write();

}

}

相關(guān)文章

無相關(guān)信息
更新時間2022-03-13 11:11:04【至頂部↑】
聯(lián)系我們 | 郵件: | 客服熱線電話:4008816886(QQ同號) | 

付款方式留言簿投訴中心網(wǎng)站糾錯二維碼手機(jī)版

客服電話: