簡體   English   中英

iPhone SDK XML解析屬性VS嵌套元素

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM