用下面的VB6代码用XML来保存两个字符串值:
Set xmlDoc = CreateObject("MSXML.DOMDocument")
Set xmlRoot = xmlDoc.createElement("Root")
xmlDoc.appendChild xmlRoot
Dim xmlItem As IXMLDOMNode
Dim xmlVal As IXMLDOMNode
Set xmlItem = xmlDoc.createElement("Item")
xmlRoot.appendChild xmlItem
Set xmlVal = xmlDoc.createElement("Old")
xmlVal.Text =" "
xmlItem.appendChild xmlVal
Set xmlVal = xmlDoc.createElement("New")
xmlVal.Text = " "
xmlItem.appendChild xmlVal
结果生成的XML是这样的:
<Replace>
<Item>
<Old />
<New />
</Item>
</Replace>这样回读这个XML文件,原来5个空格的字符串和1个空格的字符串都变成了空值了,这个怎么解决这个问题?
Set xmlDoc = CreateObject("MSXML.DOMDocument")
Set xmlRoot = xmlDoc.createElement("Root")
xmlDoc.appendChild xmlRoot
Dim xmlItem As IXMLDOMNode
Dim xmlVal As IXMLDOMNode
Set xmlItem = xmlDoc.createElement("Item")
xmlRoot.appendChild xmlItem
Set xmlVal = xmlDoc.createElement("Old")
xmlVal.Text =" "
xmlItem.appendChild xmlVal
Set xmlVal = xmlDoc.createElement("New")
xmlVal.Text = " "
xmlItem.appendChild xmlVal
结果生成的XML是这样的:
<Replace>
<Item>
<Old />
<New />
</Item>
</Replace>这样回读这个XML文件,原来5个空格的字符串和1个空格的字符串都变成了空值了,这个怎么解决这个问题?
<Root><Item><Old> </Old><New> </New></Item></Root>
是有空格的,但是你用IE或用别的软件去解析这个文件,会被认为是两个空节点!Set xmlDoc = CreateObject("MSXML.DOMDocument")
xmlDoc.Load CommonDialog1.FileName
Set xmlRoot = xmlDoc.documentElement
If Not (xmlRoot Is Nothing) Then
TextBox1.Text=xmlRoot.childNodes(K).childNodes(0).Text
TextBox2.Text=xmlRoot.childNodes(K).childNodes(1).Text结果,TextBox1和TextBox2的Text都是""
- <Replace>
- <Item>
<Old />
<New />
</Item>
</Replace>
Debug.Print xmlDoc.documentElement.xml
http://msdn.microsoft.com/zh-cn/library/ms256068.aspx