当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP处理XSLT转换XML的实现

ASP
ASP实例:是否支持XmlHttp组件的判断
ASP对XML文档中文本的增加、删除、修改、查看
ASP操作XML文件的主要方法和实现
asp控制xml数据库的6段代码
ASP操作XML的类
ASP关于类的Let,Set和Get的用法的异同
ASP错误解决:800a003a错误
XMLHTTP Post Form时的表单乱码
IIS7.0在Vista系统下安装注意事项
asp文件打不开的原因
asp根据表单自动生成sql语句的函数
彻底解决XP下IIS无法解释ASP和PHP的问题
ASP教程:0177:800401f3错误解决
Service Unavailable错误的解决
ASP留言本教程
ASP教程:6大对象和数据库操作简单学
配置IIS蜜罐与黑客攻击
WEB共享与IIS相结合快速建立本地网站
IIS6架设网站的问题总结
HTTP 500 - 内部服务器错误的解决

ASP处理XSLT转换XML的实现


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 244 ::
收藏到网摘: n/a

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

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
    Public Property Let Input(ByVal vNewValue)
        If IsObject(vNewValue) Then Set lInput=vNewValue
    End Property
    Public Property Let XSLTemplatefile(ByVal vNewValue)
        Dim StyleSheet
        Dim vNewValue_
        vNewValue_ = vNewValue
        If Not InStr(vNewValue,":\") > 0 Then
            vNewValue  = Server.MapPath(vNewValue)
        End If
        Set XSLTemplate=Server.CreateObject("Msxml2.XSLTemplate")
        Set StyleSheet=Server.CreateObject("Microsoft.FreeThreadedXMLDOM")
        StyleSheet.load vNewValue
        XSLTemplate.StyleSheet=StyleSheet
    End Property
    Public Sub Transform()
        Dim proc
        Set proc = XSLTemplate.createProcessor()
        proc.input=linput
        proc.transform()
        Output=proc.output
        Set proc=Nothing
    End Sub
End Class

使用范例:

以下为引用的内容:
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()

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