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
|