Belltree 發(fā)表于 2001-10-31 15:28 XML學習 ←返回版面
/* 第二個例子,SimpleTransform.java,這個例子是轉換的,和上一個例子類似,從創(chuàng)建一個factory實例開始,這里是創(chuàng)建TransformerFactory實例,然后用newTransformer來得到一個Transformer的實例,Transformer的實例再來做實際的事情:轉換。 newTransformer()帶一個樣式單作為參數(shù)的話,那么轉換的結果就是由樣式單決定。 newTransformer()不帶任何參數(shù),轉換的結果就是源文檔。
可以看到這個例子的import部分,沒有寫import javax.xml.transform.*,為什么呢,其實完全可以這樣做的,因為全部列出來有助于大家了解做一個轉換需要用到的類。 */
/* * 一個簡單的作轉換的例子,使用一個樣式單foo.xsl,將結果轉出到foo.out * */ // Import JAXP包中Transform相關的類
import javax.xml.transform.TransformerFactory; import javax.xml.transform.Transformer;
import javax.xml.transform.Source; import javax.xml.transform.Result; import javax.xml.transform.stream.StreamSource; import javax.xml.transform.stream.StreamResult; // 異常處理類 import javax.xml.transform.TransformerException; import javax.xml.transform.TransformerConfigurationException;
// Imported java.io包相關的類 import java.io.FileOutputStream; import java.io.FileNotFoundException; import java.io.IOException;
public class SimpleTransform { public static void main(String[] args) throws TransformerException, TransformerConfigurationException, FileNotFoundException, IOException {
// 使用TransformerFactory.newInstance()方法來實例化一個使用TransformerFactory // javax.xml.transform.TransformerFactory的系統(tǒng)property設置決定實際實例化-- // org.apache.xalan.transformer.TransformerImpl. TransformerFactory tFactory = TransformerFactory.newInstance();
// 使用 TransformerFactory 來實例化一個 Transformer, 并且指定一個樣式單
Transformer transformer = tFactory.newTransformer(new StreamSource("foo.xsl"));
/* 有一個不帶任何參數(shù)的newTransformer方法,這個方法用來將source拷貝到輸出 */ // Transformer transformer = tFactory.newTransformer();
// 使用foo.xsl轉換foo.xml,將結果輸出到foo.out Source xmlSource = new StreamSource("foo.xml"); Result outputTarget = new StreamResult(new FileOutputStream("foo.out")); transformer.transform(xmlSource, outputTarget);
System.out.println("THE END"); } }
* - 本貼最后修改時間:2001-10-31 15:37:29 修改者:Belltree
|