一個(gè)XML文檔,可以先構(gòu)造一個(gè)DOM,然后將DOM轉(zhuǎn)化為xml序列,輸出或者生成文件。package test;
網(wǎng)站設(shè)計(jì)、做網(wǎng)站的開發(fā),更需要了解用戶,從用戶角度來(lái)建設(shè)網(wǎng)站,獲得較好的用戶體驗(yàn)。創(chuàng)新互聯(lián)公司多年互聯(lián)網(wǎng)經(jīng)驗(yàn),見的多,溝通容易、能幫助客戶提出的運(yùn)營(yíng)建議。作為成都一家網(wǎng)絡(luò)公司,打造的就是網(wǎng)站建設(shè)產(chǎn)品直銷的概念。選擇創(chuàng)新互聯(lián)公司,不只是建站,我們把建站作為產(chǎn)品,不斷的更新、完善,讓每位來(lái)訪用戶感受到浩方產(chǎn)品的價(jià)值服務(wù)。
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer;
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 Test {
public static void generate(){
try {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.newDocument();
document.setXmlVersion("1.0");
document.setXmlStandalone(true);
Element root = document.createElement_x("MobileNet"); //創(chuàng)建根節(jié)點(diǎn)
document.appendChild(root); //將根節(jié)點(diǎn)添加到Document對(duì)象中
Element pageElement = document.createElement_x("page"); //設(shè)置第一個(gè)page元素到
pageElement.setAttribute("name", "list.jsp"); //設(shè)置page節(jié)點(diǎn)的name屬性
Element methodElement = document.createElement_x("method"); //設(shè)置method節(jié)點(diǎn)
methodElement.setTextContent("get"); //給method設(shè)置值
pageElement.appendChild(methodElement); //添加method節(jié)點(diǎn)到page節(jié)點(diǎn)內(nèi)
Element displayElement = document.createElement_x("display"); //設(shè)置method節(jié)點(diǎn)
displayElement.setTextContent("list撒旦發(fā)放"); //給display設(shè)置值
pageElement.appendChild(displayElement); //添加display節(jié)點(diǎn)到page節(jié)點(diǎn)內(nèi)
Element request_paramElement = document.createElement_x("request_param");
request_paramElement.setTextContent("request_param1|request_param2");
pageElement.appendChild(request_paramElement);
root.appendChild(pageElement);
pageElement = document.createElement_x("page"); //設(shè)置第二個(gè)page元素到
pageElement.setAttribute("name", "content.jsp"); //設(shè)置page節(jié)點(diǎn)的name屬性
methodElement = document.createElement_x("method");
methodElement.setTextContent("post");
pageElement.appendChild(methodElement);
displayElement = document.createElement_x("display");
displayElement.setTextContent("content");
pageElement.appendChild(displayElement);
Element url_titleElement = document.createElement_x("url_title"); //設(shè)置url_title節(jié)點(diǎn)
url_titleElement.setTextContent("title,publisher,published_calendar"); //給url_title設(shè)置值
pageElement.appendChild(url_titleElement); //添加url_title節(jié)點(diǎn)到page節(jié)點(diǎn)內(nèi)
root.appendChild(pageElement); //將page段加人根節(jié)點(diǎn)內(nèi)
TransformerFactory transFactory = TransformerFactory.newInstance(); //開始把Document映射到文件
Transformer transFormer = transFactory.newTransformer();
DOMSource domSource = new DOMSource(document); //設(shè)置輸出結(jié)果
File file = new File("MobileNetRule.xml"); //生成xml文件
if (!file.exists()) {
file.createNewFile();
}
FileOutputStream out = new FileOutputStream(file); //文件輸出流
StreamResult xmlResult = new StreamResult(out); //設(shè)置輸入源
transFormer.transform(domSource, xmlResult); //輸出xml文件
System.out.println(file.getAbsolutePath()); //測(cè)試文件輸出的路徑
TransformerFactory tf = TransformerFactory.newInstance();
Transformer t = tf.newTransformer();
t.setOutputProperty("{/encoding/}","GB2312/");
ByteArrayOutputStream boc = new ByteArrayOutputStream();
t.transform(new DOMSource(document), new StreamResult(boc));
String xmlstring = boc.toString();
System.out.println(xmlstring);
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args){
Test.generate();
}
}
用java自帶的就可以,有問題可以問我
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
//構(gòu)造
public XMLUtil(String name) throws ParserConfigurationException {
filename = name;
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
builder = factory.newDocumentBuilder();
document = builder.newDocument();
}
/**
* 保存到文件
*/
public void toSave() {
try {
TransformerFactory tf = TransformerFactory.newInstance();
Transformer transformer = tf.newTransformer();
DOMSource source = new DOMSource(document);
transformer.setOutputProperty(OutputKeys.ENCODING, "GB2312");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
PrintWriter pw = new PrintWriter(new FileOutputStream(filename));
StreamResult result = new StreamResult(pw);
transformer.transform(source, result);
} catch (TransformerException mye) {
mye.printStackTrace();
} catch (IOException exp) {
exp.printStackTrace();
}
}
import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import org.w3c.dom.*;import org.xml.sax.SAXException;import javax.xml.parsers.*;import javax.xml.transform.*;import javax.xml.transform.dom.DOMSource;import javax.xml.transform.stream.*;import javax.xml.xpath.*;public class Test { public static void main(String[] args) { DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance(); Element theBook=null, theElem=null, root=null; try { factory.setIgnoringElementContentWhitespace(true); DocumentBuilder db=factory.newDocumentBuilder(); Document xmldoc=db.parse(new File("Test1.xml")); root=xmldoc.getDocumentElement(); theBook=(Element) selectSingleNode("/books/book[name='哈里波特']", root); System.out.println("--- 查詢找《哈里波特》 ----"); Element nameNode=(Element)theBook.getElementsByTagName("price").item(0); String name=nameNode.getFirstChild().getNodeValue(); System.out.println(name); output(theBook); System.out.println("=============selectSingleNode(books/book[name='哈里波特'], root)=================="); //--- 新建一本書開始 ---- theBook=xmldoc.createElement("book"); theElem=xmldoc.createElement("name"); theElem.setTextContent("新書"); theBook.appendChild(theElem); theElem=xmldoc.createElement("price"); theElem.setTextContent("20"); theBook.appendChild(theElem); theElem=xmldoc.createElement("memo"); theElem.setTextContent("新書的更好看。"); theBook.appendChild(theElem); root.appendChild(theBook); System.out.println("--- 新建一本書開始 ----"); output(xmldoc); System.out.println("=============================="); //--- 新建一本書完成 ---- //--- 下面對(duì)《哈里波特》做一些修改。 ---- //--- 查詢找《哈里波特》---- //--- 此時(shí)修改這本書的價(jià)格 ----- theBook.getElementsByTagName("price").item(0).setTextContent("15");//getElementsByTagName返回的是NodeList,所以要跟上item(0)。另外,getElementsByTagName("price")相當(dāng)于xpath的".//price"。 System.out.println("--- 此時(shí)修改這本書的價(jià)格 ----"); output(theBook); //--- 另外還想加一個(gè)屬性id,值為B01 ---- theBook.setAttribute("id", "B01"); System.out.println("--- 另外還想加一個(gè)屬性id,值為B01 ----"); output(theBook); //--- 對(duì)《哈里波特》修改完成。 ---- //--- 要用id屬性刪除《三國(guó)演義》這本書 ---- theBook=(Element) selectSingleNode("/books/book[@id='B02']", root); System.out.println("--- 要用id屬性刪除《三國(guó)演義》這本書 ----"); output(theBook); theBook.getParentNode().removeChild(theBook); System.out.println("--- 刪除后的XML ----"); output(xmldoc); //--- 再將所有價(jià)格低于10的書刪除 ---- NodeList someBooks=selectNodes("/books/book[price10]", root); System.out.println("--- 再將所有價(jià)格低于10的書刪除 ---"); System.out.println("--- 符合條件的書有 "+someBooks.getLength()+"本。 ---"); for(int i=0;isomeBooks.getLength();i++) { someBooks.item(i).getParentNode().removeChild(someBooks.item(i)); } output(xmldoc); saveXml("Test1_Edited.xml", xmldoc); } catch (ParserConfigurationException e) { e.printStackTrace(); } catch (SAXException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static void output(Node node) {//將node的XML字符串輸出到控制臺(tái) TransformerFactory transFactory=TransformerFactory.newInstance(); try { Transformer transformer = transFactory.newTransformer(); transformer.setOutputProperty("encoding", "gb2312"); transformer.setOutputProperty("indent", "yes"); DOMSource source=new DOMSource(); source.setNode(node); StreamResult result=new StreamResult(); result.setOutputStream(System.out); transformer.transform(source, result); } catch (TransformerConfigurationException e) { e.printStackTrace(); } catch (TransformerException e) { e.printStackTrace(); } } public static Node selectSingleNode(String express, Object source) {//查找節(jié)點(diǎn),并返回第一個(gè)符合條件節(jié)點(diǎn) Node result=null; XPathFactory xpathFactory=XPathFactory.newInstance(); XPath xpath=xpathFactory.newXPath(); try { result=(Node) xpath.evaluate(express, source, XPathConstants.NODE); } catch (XPathExpressionException e) { e.printStackTrace(); } return result; } public static NodeList selectNodes(String express, Object source) {//查找節(jié)點(diǎn),返回符合條件的節(jié)點(diǎn)集。 NodeList result=null; XPathFactory xpathFactory=XPathFactory.newInstance(); XPath xpath=xpathFactory.newXPath(); try { result=(NodeList) xpath.evaluate(express, source, XPathConstants.NODESET); } catch (XPathExpressionException e) { e.printStackTrace(); } return result; } public static void saveXml(String fileName, Document doc) {//將Document輸出到文件 TransformerFactory transFactory=TransformerFactory.newInstance(); try { Transformer transformer = transFactory.newTransformer(); transformer.setOutputProperty("indent", "yes"); DOMSource source=new DOMSource(); source.setNode(doc); StreamResult result=new StreamResult(); result.setOutputStream(new FileOutputStream(fileName)); transformer.transform(source, result); } catch (TransformerConfigurationException e) { e.printStackTrace(); } catch (TransformerException e) { e.printStackTrace(); } catch (FileNotFoundException e) { e.printStackTrace(); } }} XML:?xml version="1.0" encoding="GBK"?booksbookname哈里波特/nameprice10/pricememo這是一本很好看的書。/memo/bookbook id="B02"name三國(guó)演義/nameprice10/pricememo四大名著之一。/memo/bookbook id="B03"name水滸/nameprice6/pricememo四大名著之一。/memo/bookbook id="B04"name紅樓/nameprice5/pricememo四大名著之一。/memo/book/books
怎樣將xml檔案生成java程式碼 xml是有格式的檔案,到底里面儲(chǔ)存了什么資料,得知道,才能辦法處理
java程式碼怎樣生成csv檔案
我來(lái)說一下大致的實(shí)現(xiàn)步驟,具體實(shí)現(xiàn)需要你自己去寫了
1.檢索資料,檢索到的資料假定為一個(gè)list
2.你需要自己寫一個(gè)objectToString之類的方法來(lái)把檢索到的資料轉(zhuǎn)化為一個(gè)String或StringBuffer,就是往各欄位間插",",往個(gè)記錄間插"\r\n",如此這類的轉(zhuǎn)換,假定轉(zhuǎn)換好的字串為strResult.
3.然后用下面的程式碼寫在后臺(tái)來(lái)控制下載,檔名那里你可以把時(shí)間格式控制好,或者用前臺(tái)傳過來(lái)的引數(shù)做名字。
response.setContentType("application/download;charset=UTF-8");
response.setHeader("Content-disposition","attachment;filename=\"" +new Date()+".csv\"");
Java程式碼完成后,怎樣生成檔案?
JCreator Pro 點(diǎn)一下編譯按鈕不就行了嗎,再點(diǎn)執(zhí)行按鈕就運(yùn)行了
eclipse通過xml檔案如何找到j(luò)ava程式碼
一、配置指南:
1、Eclipse中類檔案(*.java)自動(dòng)補(bǔ)全配置:
Windows-preferance-java-Editor-Content Assist
面板最下端 Auto Activation 將Auto activation triggers for Java后面的文字框中的“.”替換成“abcdefghijklmnopqrstuvwABCDEFGHIJKLMNOPQRSTUVWXYZ.”(注意后面還有一個(gè)".")
2、Eclipse中*.xml檔案自動(dòng)補(bǔ)全配置:
Windows-preferance-XML-XML Files-Editor-Content Assist
面板最上端 Auto Activation 將Prompt when these characters are inserted后面的文字框中的“=:”替換成“=:abcdefghijklmnopqrstuvwABCDEFGHIJKLMNOPQRSTUVWXYZ ”(注意后面還有一個(gè)空格)
二、使用指南:
在需要程式碼自動(dòng)補(bǔ)全的地方直接按ALT+/,就會(huì)出現(xiàn)類似如下圖所示的效果,選擇就可以啦:
java程式碼生成dat檔案
File filename = new File("F:\\zd.dat");
說明:dat可以改成任何副檔名,是自己可以定義的,如下:
public void createFile(){path表示所建立檔案的路徑String path = "d:/tr/rt";File f = new File(path);if(!f.exists()){f.mkdirs();} fileName表示建立的檔名;為txt型別;String fileName="test.txt";File file = new File(f,fileName);if(!file.exists()){try {file.createNewFile();} catch (IOException e) { TODO Auto-generated catch blocke.printStackTrace();}}}現(xiàn)在可以在d:/tr/rt 目錄下找到test.txt檔案
怎么生成pdf檔案 java程式碼
使用iText外掛,這是著名的開放原始碼的站點(diǎn)sourcefe一個(gè)專案。網(wǎng)上很多例子,自己搜一下,不給你舉例了。
java 怎樣解析 excel生成的xml檔案
java解析excel生成的xml檔案的方法是使用dom4j實(shí)現(xiàn)的。
dom4j是一個(gè)簡(jiǎn)單的開源庫(kù),用于處理XML、 XPath和XSLT,它基于Java平臺(tái),使用Java的集合框架,全面集成了DOM,SAX和JAXP。
1、excel生成的xml樣例檔案:
?xml version="1.0"?
?mso-application progid="Excel.Sheet"?
Workbook xmlns="urn:schemas-microsoft-:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-:office:office"
xmlns:x="urn:schemas-microsoft-:office:excel"
xmlns:ss="urn:schemas-microsoft-:office:spreadsheet"
xmlns:=":w3./TR/REC-40"
DocumentProperties xmlns="urn:schemas-microsoft-:office:office"
Created2006-09-16T00:00:00Z/Created
LastSaved2016-07-25T03:26:50Z/LastSaved
Version14.00/Version
/DocumentProperties
OfficeDocumentSettings xmlns="urn:schemas-microsoft-:office:office"
AllowPNG/
RemovePersonalInformation/
/OfficeDocumentSettings
ExcelWorkbook xmlns="urn:schemas-microsoft-:office:excel"
WindowHeight7956/WindowHeight
WindowWidth14808/WindowWidth
WindowTopX240/WindowTopX
WindowTopY168/WindowTopY
ActiveSheet2/ActiveSheet
ProtectStructureFalse/ProtectStructure
ProtectWindowsFalse/ProtectWindows
/ExcelWorkbook
Styles
Style ss:ID="Default" ss:Name="Normal"
Alignment ss:Vertical="Bottom"/
Borders/
Font ss:FontName="宋體" x:CharSet="134" ss:Size="11" ss:Color="#000000"/
Interior/
NumberFormat/
Protection/
/Style
Style ss:ID="s16" ss:Name="好"
Font ss:FontName="宋體" x:CharSet="134" ss:Size="11" ss:Color="#006100"/
Interior ss:Color="#C6EFCE" ss:Pattern="Solid"/
/Style
Style ss:ID="s17"
Alignment ss:Horizontal="Left" ss:Vertical="Center" ss:Indent="1"
ss:WrapText="1"/
Font ss:FontName="宋體" x:CharSet="134" ss:Size="8" ss:Color="#686868"/
NumberFormat ss:Format="@"/
/Style
Style ss:ID="s18" ss:Parent="s16"
Alignment ss:Vertical="Bottom"/
/Style
Style ss:ID="s19"
NumberFormat ss:Format="yyyy/m/d\ h:mm:ss"/
/Style
/Styles
Worksheet ss:Name="Sheet1"
Table ss:ExpandedColumnCount="6" ss:ExpandedRowCount="3" x:FullColumns="1"
x:FullRows="1" ss:DefaultRowHeight="14.4"
Row
CellData ss:Type="String"工號(hào)/Data/Cell
CellData ss:Type="String"姓名 /Data/Cell
Cell ss:Index="5"Data ss:Type="String"工號(hào)/Data/Cell
CellData ss:Type="String"姓名/Data/Cell
/Row
Row
CellData ss:Type="Number"111/Data/Cell
CellData ss:Type="String"張三/Data/Cell
Cell ss:Index="5"Data ss:Type="Number"111/Data/Cell
Cell ss:Formula="=VLOOKUP(R2C5:R3C5,RC[-5]:R[1]C[-4],2)"Data
ss:Type="String"張三/Data/Cell
/Row
Row
CellData ss:Type="Number"112/Data/Cell
CellData ss:Type="String"李四/Data/Cell
Cell ss:Index="5"Data ss:Type="Number"112/Data/Cell
Cell ss:Formula="=VLOOKUP(R2C5:R3C5,RC[-5]:R[1]C[-4],2)"Data
ss:Type="String"李四/Data/Cell
/Row
/Table
WorksheetOptions xmlns="urn:schemas-microsoft-:office:excel"
PageSetup
Header x:Margin="0.3"/
Footer x:Margin="0.3"/
PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/
/PageSetup
Panes
Pane
Number3/Number
ActiveRow7/ActiveRow
ActiveCol5/ActiveCol
/Pane
/Panes
ProtectObjectsFalse/ProtectObjects
ProtectScenariosFalse/ProtectScenarios
/WorksheetOptions
/Worksheet
/Workbook
2、java解析程式碼:
import java.io.File;
import java.util.Iterator;
import .dom4j.Attribute;
import .dom4j.Document;
import .dom4j.Element;
import .dom4j.io.SAXReader;
public class Demo {
public static void main(String[] args) throws Exception {
SAXReader reader = new SAXReader();
Document document = reader.read(new File("person.xml"));
Element root = document.getRootElement();
Iterator it = root.elementIterator();
while (it.hasNext()) {
Element element = (Element) it.next();
未知屬性名稱情況下
/*Iterator attrIt = element.attributeIterator();
while (attrIt.hasNext()) {
Attribute a = (Attribute) attrIt.next();
System.out.println(a.getValue());
}*/
已知屬性名稱情況下
System.out.println("id: " + element.attributeValue("id"));
未知元素名情況下
/*Iterator eleIt = element.elementIterator();
while (eleIt.hasNext()) {
Element e = (Element) eleIt.next();
System.out.println(e.getName() + ": " + e.getText());
}
System.out.println();*/
已知元素名情況下
System.out.println("title: " + element.elementText("title"));
System.out.println("author: " + element.elementText("author"));
System.out.println();
}
}
}
求一段 讀出\修改 xml檔案的java程式碼
import .dom4j.Element;
import .dom4j.tree.DefaultElement;
import .dom4j.tree.DefaultDocument;
上面是主要的包!
String xml = "";
Element _root = new DefaultElement("Business");
Element _node = _root.addElement("Output");
try {
_node.addElement("Password").addText("123");
_node.addElement("ReturnData").addText("1");
_node.addElement("ReturnInfo").addText("登陸成功");
}
catch (Exception ex) {
ex.printStackTrace();
}
DefaultDocument doc = new DefaultDocument(_root);
xml = doc.asXML();
上面是生成XML。
怎么通過java程式碼向xml檔案中添加注釋
package .tuobao.test;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.util.Iterator;
import java.util.List;
import .dom4j.Attribute;
import .dom4j.Document;
import .dom4j.DocumentHelper;
import .dom4j.Element;
import .dom4j.io.OutputFormat;
import .dom4j.io.SAXReader;
import .dom4j.io.XMLWriter;
public class testDom4j {
private static final String path = "f:" + java.io.File.separator
+ "eee.xml";
/**
* @param args
*/
public static void main(String[] args) {
System.out.println(createXMLFile(path));
System.out.println(modiXMLFile(path, path));
System.out.println(formatXMLFile(path));
}
/**
* 建立一個(gè)XML文件,文件名由輸入屬性決定
*
* @param param
* filename 需建立的檔名
* @return返回操作結(jié)果, 0表失敗, 1表成功
*/
public static int createXMLFile(String filename) {
/** 返回操作結(jié)果, 0表失敗, 1表成功 */
int returnValue = 0;
/** 建立document物件 */
Document document = DocumentHelper.createDocument();
/** 建立XML文件的根books */
Element booksElement = document.addElement("books");
/** 加入一行注釋 */
booksElement.addComment("This is a test for dom4j, holen, 2004.9.11");
/** 加入第一個(gè)book節(jié)點(diǎn) */
Element bookElement = booksElement.addElement("book");
/** 加入show屬性內(nèi)容 */
bookElement.addAttribute("show", "yes");
/** 加入title節(jié)點(diǎn) */
Element titleElement = bookElement.addElement("title");
/** 為title設(shè)定內(nèi)容 */
titleElement.setText("Dom4j Tutorials");
/** 類似的完成后兩個(gè)book */
bookElement = booksElement.addElement("book");
bookElement.addAttribute("show", "yes");
titleElement = bookElement.addElement("title");
titleElement.setText("Lucene Studing");
bookElement = booksElement.addElement("book");
bookElement.addAttribute("show", "no");
titleElement = bookElement.addElement("title");
titleElement.setText("Lucene in Action");
/** 加入owner節(jié)點(diǎn) */
Element ownerElement = booksElement.addElement("owner");
ownerElement.setText("O'Reilly");
try {
/** 將document中的內(nèi)容寫入檔案中 */
XMLWriter writer = new XMLWriter(new FileWriter(new java.io.File(
filename)));
writer.write(document);
writer.flush();
writer.close();
/** 執(zhí)行成功,需返回1 */
returnValue = 1;
} catch (Exception ex) {
returnValue = 0;
ex.printStackTrace();
}
return returnValue;
}
/**
* 修改XML檔案中內(nèi)容,并另存為一個(gè)新檔案 重點(diǎn)掌握dom4j中如何新增節(jié)點(diǎn),修改節(jié)點(diǎn),刪除節(jié)點(diǎn)
*
* @param filename
* 修改物件檔案
* @param newfilename
* 修改后另存為該檔案
* @return 返回操作結(jié)果, 0表失敗, 1表成功
*/
public static int modiXMLFile(String filename, String newfilename) {
int returnValue = 0;
try {
SAXReader saxReader = new SAXReader();
Document document = saxReader.read(new java.io.File(filename));
/** 修改內(nèi)容之一: 如果book節(jié)點(diǎn)中show屬性的內(nèi)容為yes,則修改成no */
/** 先用xpath查詢物件 */
List list = document.selectNodes("/books/book/@show");
Iterator iter = list.iterator();
while (iter.hasNext()) {
Attribute attribute = (Attribute) iter.next();
if (attribute.getValue().equals("yes")) {
attribute.setValue("no");
}
}
/**
* 修改內(nèi)容之二: 把owner項(xiàng)內(nèi)容改為"測(cè)試修改"
* 并在owner節(jié)點(diǎn)中加入date節(jié)點(diǎn),date節(jié)點(diǎn)的內(nèi)容為2004-09-11,還為date節(jié)點(diǎn)新增一個(gè)屬性type
*/
list = document.selectNodes("/books/owner");
iter = list.iterator();
if (iter.hasNext()) {
Element ownerElement = (Element) iter.next();
ownerElement.setText("測(cè)試修改");
Element dateElement = ownerElement.addElement("date");
dateElement.setText("2008-09-11");
dateElement.addAttribute("type", "日期");
}
/** 修改內(nèi)容之三: 若title內(nèi)容為Dom4j Tutorials,則刪除該節(jié)點(diǎn) */
list = document.selectNodes("/books/book");
iter = list.iterator();
while (iter.hasNext()) {
Element bookElement = (Element) iter.next();
Iterator iterator = bookElement.elementIterator("title");
while (iterator.hasNext()) {
Element titleElement = (Element) iterator.next();
if (titleElement.getText().equals("Dom4j Tutorials")) {
bookElement.remove(titleElement);
}
}
}
try {
/** 格式化輸出,型別IE瀏覽一樣 */
OutputFormat format = OutputFormat.createPrettyPrint();
/** 指定XML編碼 */
format.setEncoding("GBK");
/** 將document中的內(nèi)容寫入檔案中 */
XMLWriter writer = new XMLWriter(new FileWriter(new
File(newfilename)),format);
保證編碼為UTF-8,支援中文寫入
XMLWriter writer = new XMLWriter(new FileOutputStream(new File(
newfilename)), format);
writer.write(document);
writer.flush();
writer.close();
/** 執(zhí)行成功,需返回1 */
returnValue = 1;
} catch (Exception ex) {
returnValue = 0;
ex.printStackTrace();
}
} catch (Exception ex) {
ex.printStackTrace();
}
return returnValue;
}
/**
* 格式化XML文件,并解決中文問題
*
* @param filename
* @return
*/
public static int formatXMLFile(String filename) {
int returnValue = 0;
try {
SAXReader saxReader = new SAXReader();
Document document = saxReader.read(new File(filename));
XMLWriter writer = null;
/** 格式化輸出,型別IE瀏覽一樣 */
OutputFormat format = OutputFormat.createPrettyPrint();
/** 指定XML編碼 */
format.setEncoding("utf-8");
writer = new XMLWriter(new FileWriter(new File(filename)), format);
writer.write(document);
writer.flush();
writer.close();
/** 執(zhí)行成功,需返回1 */
returnValue = 1;
} catch (Exception ex) {
returnValue = 0;
ex.printStackTrace();
}
return returnValue;
}
}
這個(gè)希望對(duì)你有用。。
//輸出XML流
private void outputXML() throws DTreeException {
DOMSource domSource = new DOMSource (doc);
StreamResult streamResult = new StreamResult(this.out);
try {
TransformerFactory transformerFactory=TransformerFactory.newInstance();
Transformer transformer=transformerFactory.newTransformer();
Properties properties = transformer.getOutputProperties();
properties.setProperty(OutputKeys.ENCODING, "gb2312 ");
properties.setProperty(OutputKeys.VERSION, "1.0 ");
transformer.setOutputProperties(properties);
transformer.transform(domSource,streamResult);
}
catch (TransformerConfigurationException tce) {
tce.printStackTrace();
throw new DTreeException( "TransformerConfigure Exception: "+tce.getMessage());
}
catch (TransformerException te) {
te.printStackTrace ();
throw new DTreeException( "Transformer Exception: "+te.getMessage());
}
}
標(biāo)題名稱:javaxml生成代碼 java jxl生成excel
標(biāo)題鏈接:http://aaarwkj.com/article42/hhphhc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、網(wǎng)站改版、App開發(fā)、靜態(tài)網(wǎng)站、企業(yè)網(wǎng)站制作、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)