除了MSXML,还有更好的IDomi实现吗?
Delphi中有3种IDomi实现:除了MSXML,还有更好的IDomi实现吗?,xml,delphi,Xml,Delphi,Delphi中有3种IDomi实现: MSXML Xerces XML ADOMXMLV4 MSXML是默认的IDomi实现 我的测试是计算加载10MB xml文件所需的时间。我使用使用XML数据绑定从XSD生成的Delphi单元来加载XML文件。该装置有3个常见功能: function Getmenubar(Doc: IXMLDocument): IXMLMenubarType; function Loadmenubar(const FileName: WideString): IXMLMen
function Getmenubar(Doc: IXMLDocument): IXMLMenubarType;
function Loadmenubar(const FileName: WideString): IXMLMenubarType;
function Newmenubar: IXMLMenubarType;
我从网上了解到,有人评论说,MSXML的开销很高,与其他XML解析器相比,它无法执行。然而,我的研究表明MSXML是最好的。Xerces XML第2版和ADOM XML第4版最差:
是否有其他供应商实现了Delphi的IDomi实现,并且比MSXML工作得更好?我正在使用Delphi 2010和Windows 7。有一个名为NativeXML的工具(最近开始开源)
有一种比MSXML更快且开源的。它是MSXML的同谋,因此切换非常容易。事件接口名称相同。然后,还有一个扩展OmniXML接口的方法,因此使用XML变得非常简单。查看有关SimpleStorage使用的演示和博客帖子。请记住,SimpleStorage中更复杂的操作会牺牲一点速度以便于使用和增强功能。您确定需要DOM解析器吗?SAX解析器更快。我对XML不太了解,但我知道计算,我知道这是一条一般规则:如果有Microsoft版本和替代品,至少有一种替代品会更好。为什么OmniXML不适合您?我在许多产品中使用它,并取得了巨大成功。是的,它比MSXML更重要。如果您在VCL source:msxmldom.pas中查看该单元,您将看到该单元在初始化部分注册DOM供应商。然后,我们可以设置DefaultDOMVendor(xmldom.pas中定义的变量)来指定解析XML流时要使用的DOM供应商。是的,当我通过XML数据绑定生成的对象访问XML流时,我需要使用DOM。你坚持使用MSXML吗?(或者找到其他替代方案?)