Delphi和XML CDATA

4
我该如何在Delphi中从XML文件中提取CData? 这是我的XML文件:
<?xml version="1.0"?>
<root>
  <PartoBeetaXMLVersion value="0.1">
    <VersionID value="111"/>
    <Developer value="1Dev"/>
    <CDate value="10/12/2011"/>
    <Script>
      <![CDATA[
      alter table tblPersonels
      add UID int null, 
          RID int null
    ]]>
    </Script>
  </PartoBeetaXMLVersion>
</root>

4
你只需读取<script>标签内部的内容,让你正在使用的任何XML解析器处理CDATA。这应该发生在你的代码下一层。 - David Heffernan
1个回答

7
使用 OmniXML,您可以执行以下操作:
uses
  OmniXML,
  OmniXMLUtils;

function GetScriptCData(const fileName: string): string
var
  xml: IXMLDocument;
begin
  Result := '';
  xml := CreateXMLDoc;
  if XMLLoadFromFile(xml, fileName) then
    Result := GetNodeCData(xml.SelectSingleNode('/root/PartoBeetaXMLVersion/Script'));
end;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接