Java+XML學習Step by step(二)
發表時間:2024-02-22 來源:明輝站整理相關軟件相關文章人氣:
[摘要]Belltree 發表于 2001-10-31 15:28 XML學習 ←返回版面 /*第二個例子,SimpleTransform.java,這個例子是轉換的,和上一個例子類似,從創建一個factory實例開始,這里是創建TransformerFactory實例,然后用newTransformer...
Belltree 發表于 2001-10-31 15:28 XML學習 ←返回版面
/*
第二個例子,SimpleTransform.java,這個例子是轉換的,和上一個例子類似,從創建一個factory實例開始,這里是創建TransformerFactory實例,然后用newTransformer來得到一個Transformer的實例,Transformer的實例再來做實際的事情:轉換。
newTransformer()帶一個樣式單作為參數的話,那么轉換的結果就是由樣式單決定。
newTransformer()不帶任何參數,轉換的結果就是源文檔。
可以看到這個例子的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的系統property設置決定實際實例化--
// org.apache.xalan.transformer.TransformerImpl.
TransformerFactory tFactory = TransformerFactory.newInstance();
// 使用 TransformerFactory 來實例化一個 Transformer, 并且指定一個樣式單
Transformer transformer = tFactory.newTransformer(new StreamSource("foo.xsl"));
/* 有一個不帶任何參數的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