0

我完全不知道何时使用 VBScript,所以当我将网上找到的两个简单代码片段用于将文本文件的全部内容插入 XML 文档时,我非常高兴。

除了我的<已更改为&lt;和我的<已更改为之外,一切正常&gt;

我该如何克服呢?

我的代码:

Const ForReading = 1

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile("C:\test.txt", ForReading)

strText = objTextFile.ReadAll
objTextFile.Close

Set xmlDoc = CreateObject("Microsoft.XMLDOM")

xmlDoc.Async = "False"
xmlDoc.Load("C:\Audits.xml")

Set colNodes = xmlDoc.SelectNodes("/TOOLS")

For Each objNode In colNodes
   objNode.text = (strText)
Next

xmlDoc.Save "C:\Audits.xml"
4

2 回答 2

1

CDATA 部分允许 < 和 >:

CDATA 部分允许开发人员在元素内容中包含标记字符 <、> 和 &,而无需使用字符或实体引用。脚本、样式表、程序代码和示例 XML 代码经常包含在 CDATA 部分中。

文档

代码:

  Dim oXML : Set oXML = CreateObject("Msxml2.DOMDocument")
  Set oXML.documentElement = oXML.createElement("a")
  Dim nd
  Set nd = oXML.createElement("b")
  nd.appendChild oXML.createTextNode("<>")
  oXML.documentElement.appendChild nd
  Set nd = oXML.createElement("c")
  nd.appendChild oXML.createCDATASection("<>")
  oXML.documentElement.appendChild nd

输出:

<a><b>&lt;&gt;</b><c><![CDATA[<>]]></c></a>
于 2012-12-10T20:11:44.217 回答
0

你没有“克服”这一点。<>字符必须进行编码,否则解析 XML 标记会出现问题(由尖括号分隔,即<>字符)。

于 2012-12-10T18:33:10.250 回答