[英]iPhone SDK XML Parsing Attribute VS Nested elements
我在将XML解析器与iphone sdk结合使用时遇到一些性能问题。 我尝试直接使用LibXML解析器和NSXMLParser,但结果却相同。 现在,我正在寻找可以提高解析性能的东西。 将属性移动到嵌套元素可以使其更快?
我得到了这样的XML源文件:
<Events> <Event Name="Test1" Description="Desc" Cat="Cate" Date="20/01/2010" ImageURL="" /> </Events>
是否必须创建嵌套树? 如愚蠢? 它会提高性能吗?
<Events> <Event> <Name>Test1</Name> <Description>A description</Description> <Date>20/01/2010</Date> <ImageURL>http://remoteurl.../foo.png</ImageURL> </Event> </Events>
非常感谢Paolo
我不确定您的意思。 我可能无法正确理解您,但是这是我在程序中所做的。
假设您有一个像这样的文件:
<document>
<person>
<name>bob</name>
<phone>555-5555</phone>
<vehicle>
<color>blue</color>
<type>truck</truck>
</vehicle>
</person>
<person>
<name>jan</name>
<phone>444-5555</phone>
<vehicle>
<color>red</color>
<type>car</truck>
</vehicle>
</person>
</document>
按下人员标签时,假设您要创建一个人员对象。 因此,您创建了该人员对象,并让它解析人员标签内的xml。 您可以通过使person对象成为该对象的新委托来实现。 当人员对象发现关闭人员标签时,它可以重置委托。 我还继续对原始委托调用相同的方法。 我从这里得到了这个主意。 您还可以关注车辆标签并对其执行相同的操作。 我相信您可以理解我目前的驾驶情况。
我之所以认为这样可以提高效率,是因为与其创建一个元素堆栈,还不退一步(例如,当您看到有人检查文档中的内容是否在此之前)。 我想您可以假设当您看到一个人标签时,您就可以在一个人中,但是如果您想安全起见,则检查很重要。 同样,这种方式更加模块化。 我认为由于字符串比较的减少,性能会提高。 它的代码也更优雅。
如果不是这样,请您提供一些详细信息。 谢谢,祝您编程愉快。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.