2009-12-14 45 views
1

對於mac10.3.9,我可以使用cocoa解析或寫入XML的最佳方式是什麼? 我特別提到操作系統的版本,因爲我在文檔中看到,Mac 10.3.9 sdk不支持NSXML類。在MAC中解析和寫入XML 10.3.9 Cocoa?

我找到了一個OpenSource libaray(libxml),它是我可以使用的唯一的庫嗎? 請給我關於上述一些建議....

請回復很快...

謝謝 普拉迪普。

+6

聖牛10.3?你爲什麼需要支持10.3?蘋果已經正式宣佈10.3已經死亡,我們預計10.4將會在今年夏季獲得與EOL相同的狀態。 – 2009-12-14 06:36:55

回答

5

根據我的文檔副本,NSXMLParser類可用於Mac OS X 10.3及更高版本。

如果由於某些原因您無法使用該功能,則還可以使用Core Foundation XML解析器功能(搜索CFXMLParser)。這是由Apple開發的基於C的API。它將在未來版本的Mac OS X(Snow Leopard之後)中被棄用,但是因爲您正在使用10.3,所以不會擔心您的問題。

許多不能使用這兩者的人也使用libxml。 Objective-C能夠使用任何基於C的庫而不會受到任何懲罰。我相當確定Mac OS X附帶了一個libxml的副本,您可以鏈接到該庫(無需自己下載,構建或發佈庫;但如果您願意,您當然可以)。

什麼是最好的將取決於你需要什麼功能。例如,名稱空間在10.3中完全不受NSXMLParser支持,但它們在10.4中受支持。

+0

請注意,截至Snow Leopard,「CFXMLParser將在未來版本的Mac OS X中被正式棄用」(來源:CFXMLParser.h)。這對於提問者來說不是問題,因爲他支持這樣一箇舊版本的Mac OS X,但我們其他人應該更喜歡並轉向替代品。 – 2009-12-15 09:11:41

+0

好點!我更新了我的答案,以防萬一有人在幾年後閱讀它,並且沒有看到評論。 :-) – benzado 2009-12-15 18:59:14

0

感謝您的答覆....

我用libxml的XML解析,這是工作的罰款。

但它仍然有一些問題,即使xml文件是半個一致的(我的意思是如果xml損壞,它會加載xml文件)。

帶xpath的libxml使xml解析變得非常簡單。