通过xslt将xml转换为html代码

前端之家收集整理的这篇文章主要介绍了通过xslt将xml转换为html代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。


1)一个xml文件,里面是需要转换的内容
2)一个xslt文件,里面是转换的格式
3)一个java测试类,通过此类将文件进行转换
xml文件和xlst文件以及java代码,

xml文件:
<?xmlversion="1.0"encoding="ISO-8859-1"?>
<?xml-stylesheettype="text/xsl"href="cdcatalog.xsl"?>
<catalog>
<cd>
<title>EmpireBurlesque</title>
<artist>BobDylan</artist>
</cd>
</catalog>
xslt文件:
<?xmlversion="1.0"encoding="ISO-8859-1"?>
<xsl:stylesheetversion="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:templatematch="/">
<html>
<body>
<h2>MyCDCollection</h2>
<tableborder="1">
<trbgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-eachselect="catalog/cd">
<tr>
<td><xsl:value-ofselect="title"/></td>
<td><xsl:value-ofselect="artist"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
java代码:
packagetest;
importjavax.xml.transform.*;
importjavax.xml.transform.stream.*;
importjava.io.*;

publicclassxslt{
publicstaticvoidmain(Stringargs[]){
//建立transformerFactory对象
TransformerFactoryfactory=TransformerFactory.newInstance();
//以样式表文件输出建立Transformer对象
Transformertransformer=null;
try{
transformer=factory.newTransformer(newStreamSource("cdcatalog.xsl"));
System.out.print(transformer);
}catch(TransformerConfigurationExceptione){
e.printStackTrace();//tochangebodyofcatchstatementuseFile|Settings|FileTemplates.
}
//使用streamsource加载xml文件
StreamSourcexmlsource=newStreamSource("cdcatalog.xml");
//输出streamResult创建与输出文档html文件的关联
StreamResultoutput=null;
ByteArrayOutputStreambaos=newByteArrayOutputStream();
output=newStreamResult(baos);
//调用transformer对那个transform方法生成html文件
//转xml文档
try{
transformer.transform(xmlsource,output);
Stringstr=baos.toString();
System.out.println(str);
}catch(TransformerExceptione){
e.printStackTrace();//tochangebodyofcatchstatementuseFile|Settings|FileTemplates.
}
}
}
原文链接:https://www.f2er.com/xml/300507.html

猜你在找的XML相关文章