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
