精華區beta java 關於我們 聯絡資訊
有點簡單到沒辦法成為一篇文章的地步 需要的東西在 javax.xml.transform 這個 package 裡頭 API 上頭沒有寫 Since 資訊,我也沒有去往前查,只不過 5.0 內建就是了 於是,假設參數是... args[0] = "C:/test/OrztO.xsl"; //xsl 檔案存放的地方 args[1] = "C:/test/Orz.xml"; //source 檔案 args[2] = "C:/test/stO.txt"; //output 檔案 然後 TransformerFactory tFactory = TransformerFactory.newInstance(); Transformer transformer = tFactory.newTransformer(new StreamSource(args[0])); transformer.transform( new StreamSource(args[1]), new StreamResult(new FileOutputStream(args[2])) ); 你看,是不是很簡單呢... [茶] -- 侃侃長論鮮窒礙 網站:http://www.psmonkey.idv.tw 眾目睽睽無心顫 個人版:telnet://legend.twbbs.org 煢居少聊常人事 殺頭容易告白難 歡迎參觀 Java 版(@ptt.cc)精華區 \囧/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.136.153.56 > -------------------------------------------------------------------------- < 作者: nosql (http://pyms.fly.to) 站內: java 標題: Re: [J2SE] 使用 XSL 轉換 XML 時間: Wed Aug 29 08:10:36 2007 先說推測的結論 1.4.2是不能用變形金剛...不對,是不能用XSL+XML+Transformer轉HTML的 可能他們認識的科博文還沒拍電影不夠威...不對,是版本舊可能不支援 以下是我的小實驗 代價是沒得睡 [程式碼(僅關鍵部分)] StreamSource xsl = new StreamSource("C:/test.xsl"); Transformer trans = TransformerFactory.newInstance().newTransformer(xsl); trans.transform(new StreamSource("C:/test.xml"), new StreamResult("C:/test.htm")); [test.xsl] <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> a<xsl:apply-templates/>a </xsl:template> </xsl:stylesheet> [test.xml] <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="test.xsl"?> <elements> <block>p</block> <block>h1</block> <block>h2</block> <block>h3</block> <block>h4</block> </elements> 在1.4.2_13底下 一定會有一些花花綠綠的例外跑出來例如以下幾行 javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: 文件根元件遺失。 at org.apache.xalan.processor.TransformerFactoryImpl. newTransformer(Unknown Source) at test0001a.Test0001a04.main(Test0001a04.java:20) 經過兩小時掙扎後 終於跑去裝JDK6 update 2 月蝕一換掉1.4.2_13改用1.6.0_02後 立刻正常的輸出xml出來 東西做出來都天亮...Orz 另外還有發現 好像java遇到比較奇怪的目錄也會有無法轉檔的問題 還在實驗中=x= -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.230.49.132
PsMonkey:之前測,xml 放在中文路徑會有問題 (@ JDK5.0) 08/29 13:59