2009-07-16 61 views

回答

8

Delphi附带了TXMLDocument,它是一个可以让您在MSXML,Open XML和Xerces XML之间进行选择的包装器。

我只是导入微软的MSXML并直接使用它。

在Component | Import Component ...下,选择Type Library并浏览至Microsoft XML。我推荐6.0,但如果你喜欢,你可以使用4。避免使用3,因为它不符合XML标准,而且早期版本泄漏内存,而版本5仅适用于Office。

更新

如果速度是一个大问题,你可能想看看SAX(用于XML的简单API),该流的XML,而不是在内存中建立DOM的。这曾经被包含在MSXML中,但我认为我在某些地方已经在版本6中删除了它。我通常使用DOM,所以我不能推荐特定的SAX解析器,但在SourceForge上快速搜索会返回一些选项。

+0

是的,我知道TXMLDocument,但它的处理速度太慢了。 我只需要生成XML内容,并解析XML内容,我需要的速度很快。 – Leo 2009-07-16 10:56:34

+1

然后我会看看导入MSXML(而不是通过TXMLDocument使用它),这对DOM处理来说非常快。如果速度是你最大的问题,或者你有很大的XML文件,那么看看SAX。我会更新我的答案。 – 2009-07-16 11:17:58

1

怎么样包含在Delphi2007中的msxml? 我认为它也适用于D2009。

1

Delphi包含TXMLDocument/IXMLDocument,它可以使用MSXML和其他解析器。你还需要什么?

2

开放XML,替代文档对象模型(ADOM)也是一个很好的(和100%Delphi,没有ActiveX/COM依赖项)XML库。

它支持Delphi 5,6,7,8,2005年,2006年,2007年和2009年

http://www.philo.de/xml/downloads.shtml

2

NativeXML从SimDesign支持Delphi 2 - >德尔福2010年

  • 这是本地delphi所以不需要外部dll。
  • 免费提供。
  • 可以购买高级支持(论坛/电子邮件)。
  • 购买可以访问更频繁的更新/错误修复等。
  • 附带文档和示例。

在查找NativeXML之前,我查看了其他几个XML解决方案。有些没有工作。与我的适度XML需求相比,大多数似乎过于困难。我只需要解析配置信息等的小XML文件。

在实践中,我发现NativeXML设计合理,易于使用。我强烈建议检查一下!

+0

现托管于Google Code:http://simdesign.googlecode.com – mjn 2011-12-04 18:53:46