2009-07-13 18 views
20

मैं अब महीनों के लिए इसकी देखभाल कर रहा हूं और मुझे ज्यादातर एक ही प्रश्न पूछने वाली साइटें मिलीं।मैं वीबी 6 और एमएसएक्सएमएल का उपयोग कर एक्सएमएल स्रोत को कैसे प्रिंट कर सकता हूं?

उत्तर पाया गया था हमेशा .NET या C++ या XSLT शामिल थे।

+0

आप यहां देख सकते हैं: http://stackoverflow.com/q/10202576/18771 – Tomalak

उत्तर

30

महीनों के शोध के बाद मैं इसके साथ आया हूं।

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 
+6

बहुत अच्छा। मैं इस सरल को कुछ ढूंढ रहा हूं - जिसे बहुत लंबे समय तक अतिरिक्त पुस्तकालयों या रिकर्सन की आवश्यकता नहीं थी। – jveazey

+1

शानदार - इसे विकसित करने और पोस्ट करने के लिए समय निकालने के लिए बहुत बहुत धन्यवाद। – w5m

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^