ASP处理XSLT转换XML的实现


使用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对象了,如果需要,灵活可以修改


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3