用户名: 密码: 验证码: 注册           网站地图 高级搜索 RSS订阅 收藏本站
山东十七地市站长联盟信息: 济南 青岛 淄博 枣庄 东营 烟台 潍坊 济宁 泰安 威海 日照 莱芜 临沂 德州 聊城 滨州 菏泽      
您的位置:主页>网络编程>Asp编程>

实现ASP处理XSLT转换XML

[ 来源: | 作者: | 更新日期:2007-11-8 23:34:30 | 评论 0 条 | 我要投稿 ]

使用ASP处理XSLT转换XML比较简单,思路如下:创建一个XSLTemplate的对象,再创建一个XMLDOM对象,然后在家Xml文件和XSLT文件,最后使用方法transform即可,包含到类里面,具体代码如下。

字串2

Class Cls_Xml_Transform
    Private lInput,XSLTemplate
    Private p_Output
    Public Property Get Output()
        Output = p_Output
    End Property
    Private Property Let Output(ByVal strInfo)
        p_Output = strInfo
    End Property

字串1

    Public Property Let Input(ByVal vNewValue)
        If IsObject(vNewValue) Then Set lInput=vNewValue
    End Property

字串4

    Public Property Let XSLTemplatefile(ByVal vNewValue)
        Dim StyleSheet
        Dim vNewValue_

字串5

        vNewValue_ = vNewValue 字串4

        If Not InStr(vNewValue,":\") > 0 Then
            vNewValue  = Server.MapPath(vNewValue)
        End If

字串5

        Set XSLTemplate=Server.CreateObject("Msxml2.XSLTemplate")
        Set StyleSheet=Server.CreateObject("Microsoft.FreeThreadedXMLDOM")
        StyleSheet.load vNewValue
        XSLTemplate.StyleSheet=StyleSheet
    End Property

字串6

    Public Sub Transform()
        Dim proc
        Set proc = XSLTemplate.createProcessor()
        proc.input=linput
        proc.transform()
        Output=proc.output
        Set proc=Nothing
    End Sub 字串9

End Class

字串6

 

字串8

使用范例: 字串7

Set XMLDOM = Server.CreateObject("Microsoft.FreeThreadedXMLDOM")
XMLDOM.async = false
XMLDOM.load(Server.MapPath("bi2.xml"))
Set o=new Cls_IO_Transform
o.XSLTemplatefile="bi2.xsl"
o.Input=XMLDOM
o.Transform()
response.write o.Output()

字串2


这里处理的直接是XmlDom对象了,如果需要,灵活可以修改。

字串7


Tags:转换 处理 实现 vNewValue Property End Set Output Public
您的评论
用户名:新注册) 密码: 匿名评论 [所有评论]

·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为