|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: MSXML: New document built has only one line.
Hi Christine, This might help you. It's code from some of our samples that pretty prints the DOM content. If the document read in has formatting, it is preserved in the DOM, but as you point out, unless you add in specific text nodes, you don't get pretty print. Pass in to this function your DOMDocument and a string containing a tab (which is the character to use for indent). Best regards, Dan Rogers Microsoft Corporation Public Sub PrettyFormatXMLDoc(ByRef objDom As IXMLDOMNode, ByVal strIndent As String) ' In order traversal, visit the root then the children ' Dim objChild As IXMLDOMNode Dim objNew As IXMLDOMNode Static indentOrigLen as integer If indentOrigLen = 0 then indentOrigLen = len(strIndent) If objDom.childNodes.length > 0 Then For Each objChild In objDom.childNodes PrettyFormatXMLDoc objChild, strIndent & left$(strIndent, indentOrigLen) If objDom.nodeType = NODE_ELEMENT Then Set objNew = objDom.ownerDocument.createNode(NODE_TEXT, vbNullString, vbNullString) objNew.nodeValue = vbCrLf & strIndent Set objNew = objDom.insertBefore(objNew, objChild) Set objNew = Nothing End If Next If objDom.nodeType = NODE_ELEMENT Then Set objNew = objDom.ownerDocument.createNode(NODE_TEXT, vbNullString, vbNullString) objNew.nodeValue = vbCrLf & Left(strIndent, Len(strIndent) - 1) Set objNew = objDom.appendChild(objNew) Set objNew = Nothing End If End If End Sub
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Cast Your Vote
We need your help – Vote for DataDirect XML Products!
Winners and finalists announced at SOA World Conference in November. Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||







