我怎么能漂亮地打印XML源代码使用VB6和MSXML?我怎么能漂亮地打印XML源代码使用VB6和MS

2019-06-12 06:09发布

我已经在这之后现在正在寻找个月,我发现大部分网站问同样的问题。

没有找到这些问题的答案总是对.NET或C ++或参与XSLT。

Answer 1:

经过几个月的研究,我想出了这一点。

Public Function PrettyPrintXML(XML As String) As String

  Dim Reader As New SAXXMLReader60
  Dim Writer As New MXXMLWriter60

  Writer.indent = True
  Writer.standalone = False
  Writer.omitXMLDeclaration = False
  Writer.encoding = "utf-8"

  Set Reader.contentHandler = Writer
  Set Reader.dtdHandler = Writer
  Set Reader.errorHandler = Writer

  Call Reader.putProperty("http://xml.org/sax/properties/declaration-handler", _
          Writer)
  Call Reader.putProperty("http://xml.org/sax/properties/lexical-handler", _
          Writer)

  Call Reader.parse(XML)

  PrettyPrintXML = Writer.output

End Function

使用文件:

Public Function PrettyPrintDocument(Doc As DOMDocument60) As String
  PrettyPrintDocument = PrettyPrintXML(Doc.XML)
End Function


文章来源: How can I pretty-print XML source using VB6 and MSXML?