我幾乎沒有XML文檔與一堆XPath查詢。我只想要我設計的應用程序來更改XML文檔:)。我有機制來檢查文檔的完整性並保護某個人的身份。提高XML解析性能
現在,使用C#.Net進行XML解析並不能提供令我滿意的性能。
我有的選擇是。
- 使用新的解析器(即使端口爲C++)。
- 編寫一個模式(可能需要很長時間)。它會提高分析性能嗎?
- 玩弄更多.Net類或庫。 XMLReader是我現在正在使用的
有人能告訴我哪些會在我花費的時間後讓我微笑更多。
更新一些信息: 我只想解析和讀取一些/所有屬性。寫作正在改變文件不是我想要的。 稍後可能需要XSD支持。 (Donno什麼樣的未來對我來說)
當前性能:在1000個文件中14秒內50MB的XML。
打開,文件的關閉也需要一定的時間我想!!(它包括)
我要找1/2的這個時間。
是否架構提高性能?我沒有序列化任何東西。感謝xsd生成器。 XML有近1000個標籤和屬性。在我生成一個模式之後,它一團糟。我想用[pugixml(http://code.google.com/p/pugixml/)用包裝材料 – Vignesh 2011-02-07 08:34:52
@Vignesh,你能後的xml文件的樣本?如果將XSD,則流程是:1.使用XSD生成從架構,2.使用XmlSerializer的反序列化XML類定義(加載XML到內存中),3.使用XML元素。 – 2011-02-07 08:46:45
@Vignesh,XPath是查詢XML的更快捷方式。但是,如果您事先知道要查詢的信息的位置,它只會有幫助。還要注意的是,前代串行器(使用SGEN)的可顯著提高應用程序的啓動性能(雖然內存消耗保持不變)。 – 2011-02-07 08:48:20