`
gxh04007101
  • 浏览: 15620 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

xslt转html2

 
阅读更多
(转)java使用XSL+XML生成HTML文件2009-10-27 19:56转:http://www.blogjava.net/yangxiang/archive/2009/08/11/290688.html

1、xml.xml
<?xml version="1.0" encoding="utf-8"?>
<book>
    <title>XML与JSP</title>
    <chapter>
        <title>第1章 认识XML与DTD</title>
        <section>
            <title>XML的产生</title>
            <example>HelloWorld.html</example>
        </section>
    </chapter>
    <chapter>
        <title>第2章 XML名称空间</title>
        <section>
            <title>名称空间在元素和属性中的应用</title>
            <section>
                <title>名称空间在元素中的应用</title>
                <example>people.xml</example>
            </section>
            <section>
                <title>缺省名称空间</title>
                <example>book.xml</example>
            </section>
            <section>
                <title>名称空间在属性中的应用</title>
                <example>book2.xml</example>
            </section>
        </section>
        <section>
            <title>名称空间和DTD</title>
        </section>
    </chapter>
</book>

2、xsl.xsl
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="html" version="1.0" encoding="utf-8" standalone="yes"/>
    <xsl:template match="/">
        <html>
            <head>
                <title>使用XML+XSLT生成的HTML文件</title>
            </head>
            <body>
                <xsl:apply-templates select="book"/>
            </body>
        </html>
    </xsl:template>
    <xsl:template match="chapter">
        <br/>
        <br/>
        <xsl:value-of select="./title"/>
        <xsl:apply-templates select="./section"/>
    </xsl:template>
    <xsl:template match="chapter/section">
        <br/>
        <br/>
        <xsl:text>    </xsl:text>
        <!--<xsl:number format="1. " level="multiple"/>-->
        <xsl:number format="1. " level="multiple" count="chapter | section" from="book"/>
        <xsl:value-of select="./title"/>
        <xsl:apply-templates select="./section"/>
    </xsl:template>
    <xsl:template match="chapter/section/section">
        <br/>
        <br/>
        <xsl:text>        </xsl:text>
        <!--<xsl:number format="1. " level="multiple"/>-->
        <xsl:number format="1. " level="multiple" count="chapter | section" from="book"/>
        <xsl:value-of select="./title"/>
        <xsl:number value="123456789" grouping-separator="," grouping-size="3"/>
    </xsl:template>
</xsl:stylesheet>

3、java.java
package test;

import java.io.File;
import java.io.IOException;

import javax.xml.transform.Result;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;

import org.junit.Test;

public class Train {
    @Test
    public void test() throws IOException {
        String xmlFileName = "d:/test/xml.xml";
        String xslFileName = "d:/test/xsl.xsl";
        String htmlFileName = "d:/test/html.html";
        Train.Transform(xmlFileName, xslFileName, htmlFileName);
    }

    public static void Transform(String xmlFileName, String xslFileName,
            String htmlFileName) {
        try {
            TransformerFactory tFac = TransformerFactory.newInstance();
            Source xslSource = new StreamSource(xslFileName);
            Transformer t = tFac.newTransformer(xslSource);
            File xmlFile = new File(xmlFileName);
            File htmlFile = new File(htmlFileName);
            Source source = new StreamSource(xmlFile);
            Result result = new StreamResult(htmlFile);
            System.out.println(result.toString());
            t.transform(source, result);
        } catch (TransformerConfigurationException e) {
            e.printStackTrace();
        } catch (TransformerException e) {
            e.printStackTrace();
        }
    }
}
4、html.html
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>使用XML+XSLT生成的HTML文件</title>
</head>
<body>
    XML与JSP
    <br>
<br>第1章 认识XML与DTD<br>
<br>&nbsp;&nbsp;&nbsp;&nbsp;1.1. XML的产生
    <br>
<br>第2章 XML名称空间<br>
<br>&nbsp;&nbsp;&nbsp;&nbsp;2.1. 名称空间在元素和属性中的应用<br>
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.1. 名称空间在元素中的应用123,456,789<br>
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.2. 缺省名称空间123,456,789<br>
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.3. 名称空间在属性中的应用123,456,789<br>
<br>&nbsp;&nbsp;&nbsp;&nbsp;2.2. 名称空间和DTD
</body>
</html>
5、效果
XML与JSP

第1章 认识XML与DTD

    1.1. XML的产生

第2章 XML名称空间

    2.1. 名称空间在元素和属性中的应用

        2.1.1. 名称空间在元素中的应用123,456,789

        2.1.2. 缺省名称空间123,456,789

        2.1.3. 名称空间在属性中的应用123,456,789

    2.2. 名称空间和DTD

分享到:
评论

相关推荐

    java_xslt转换xml

    2. 加载XSLT样式表: 同样,使用 `StreamSource` 类加载XSLT样式表,定义转换规则。 3. 创建转换器: 通过 `javax.xml.transform.TransformerFactory` 实例化一个 `Transformer` 对象,该对象会根据加载的样式表...

    使用XSLT将XML文档转换成HTML文档

    使用 XSLT 将 XML 文档转换成 HTML 文档 在本文中,我们将学习如何使用 XSLT 将 XML 文档转换成 HTML 文档。XSLT(Extensible Stylesheet Language Transformations)是一种基于 XML 的语言,用于将 XML 文档转换成...

    XSLT和HTML的帮助文档

    2. **报表生成**:企业内部的业务数据通常以XML存储,XSLT能将这些数据转换成美观的HTML报表。 3. **动态网站**:服务器端使用XSLT将动态生成的XML转换为HTML,以响应客户端请求。 4. **Web应用程序**:在Web应用...

    xslt转化HTML标签与数据结合

    2. **变量和模式**:在XSLT中,可以声明变量来存储中间结果,也可以使用模式(patterns)来匹配XML文档的不同部分。 3. **数据转换**:XSLT提供了丰富的函数库,可以对XML数据进行各种操作,如字符串处理、数值计算...

    ASP处理XSLT转换XML的实现

    为了更好地展现XML数据,XSLT(Extensible Stylesheet Language Transformations)被用来将XML文档转换成HTML或其它格式的文档。本文将详细介绍如何使用ASP结合XSLT进行XML转换的具体实现方法。 #### ASP处理XSLT...

    xml加xslt转化成html

    xml加xslt转化成html的源代码!超有用的

    java中使用xslt转换xml成为另一个xml

    XSLT是一种专门用于将XML文档转换为其他XML、HTML或文本格式的语言。本文将详细介绍如何在Java中使用XSLT来实现XML到XML的转换。 首先,理解XML和XSLT的基本概念: 1. XML:XML是一种结构化数据存储格式,它定义了...

    JSP结合XML+XSLT将输出转换HTML

    **JSP结合XML+XSLT将输出转换HTML** 在Web开发中,JSP(JavaServer Pages)是一种动态网页技术,用于创建交互式、响应式的Web应用。XML(Extensible Markup Language)则是一种用于存储和传输结构化数据的标记语言...

    xslt例子(转换修改xml)

    在XML中,数据和结构是分离的,而XSLT则提供了将XML数据转换成其他格式,如HTML、PDF或者纯文本的方式。在这个“xslt例子(转换修改xml)”的压缩包中,我们可以深入探讨XSLT如何对XML文档进行操作。 XSLT的工作...

    XML$XSLT$HTML$JAVASCRIPT转换实例

    2. XSLT模板:编写XSLT规则,定义如何将XML元素映射到HTML元素。 3. DOM操作:使用JavaScript的Document Object Model (DOM) API,可以查找、修改、添加或删除HTML元素,实现动态页面更新。 4. AJAX技术:利用...

    利用XSLT转换XML.pdf

    - **用途**:XSLT主要用于将一种格式的XML文档转换为另一种格式的XML或HTML文档,从而实现数据展示或处理的需求。 #### XSLT的处理机制 - **转换过程**:XSLT处理器读取源XML文档并构建一个节点树。接着,它应用...

    xslt_xml_html 测试

    2. **选择节点(Selecting Nodes)**:XPath(XML Path Language)是XSLT中用于选择XML文档部分的语言。通过XPath表达式,你可以选取需要转换的元素、属性或其他节点。 3. **输出控制(Output Instructions)**:...

    XSLT简单教程- XSLT的实例

    2. **创建XSLT文档**:接着,需要创建一个XSLT模板文档`hello.xsl`,该文档定义了转换规则和输出格式。在本例中,XSLT文档将原始的XML文档转换成HTML格式。 ```xml &lt;html&gt; &lt;title&gt;First XSLT example ...

    Xml+Xslt测试工具

    2. **XSLT编辑器**:同样提供编辑功能,支持编写和调试XSLT转换规则,通常有代码提示和语法高亮。 3. **实时预览**:在修改XML或XSLT时,可以实时查看转换结果,方便调试。 4. **调试工具**:包括步进执行、设置...

    xslt控制xml样式并被html、c#后台调用

    《XSLT控制XML样式:HTML与C#后台调用详解》 在信息化时代,数据交换和展示方式的灵活性至关重要。XML(可扩展标记语言)因其结构化特性,成为数据存储和传输的理想选择,但其原始格式并不适合直接在网页上展示。...

    C#的一个XSLT转化的例子

    XSLT使用模板匹配来定义如何从源XML文档创建新的XML或HTML文档。这些模板由一系列的元素、属性和表达式组成,它们定义了转换规则。例如,一个模板可能指定如何将XML中的某个元素转换为HTML的段落。 在C#中,我们...

    使用xslt转化xml数据形成word文档导出

    首先,我们了解XSLT(Extensible Stylesheet Language Transformations)是一种转换XML文档的语言,它可以将XML数据按照预定义的样式转换为其他格式,如HTML、PDF或Word文档。这种方法的优点在于它不依赖于特定的...

    XML笔记+XSLT中文入门

    XSLT能够将XML文档转换成其他格式,如HTML、PDF或纯文本,甚至可以转换为其他XML文档。它通过XPath(XML Path Language)来定位XML文档中的节点,并使用模板来定义转换规则。XSLT的核心概念包括模板、模式匹配和变量...

    xslt中调用java

    XSLT是W3C推荐的一种XML转换语言,主要用于将XML文档转换成其他格式,如HTML、PDF或另一种XML结构。而Java是一种广泛使用的面向对象编程语言,拥有丰富的类库和强大的功能。通过XSLT调用Java,我们可以利用Java的...

Global site tag (gtag.js) - Google Analytics