2014-11-14 54 views
0

我已經開始使用將某些值編碼爲XML字符串的新數據庫。總是我需要的是其中一個元素的屬性值,但它是db中不同列的不同屬性。這裏是其中的一個示例...對於簡單的XML,忽略XmlDocument和字符串解析?

<X C="1" I="0"> 
    <E D="1000Y0M0W0D" P="1" A="5700" /> 
</X> 

在這種情況下,我需要的是A.

的數值就是這個東西,我可以很容易做到使用了System.XML,還是應該我只是在字符串上使用RegEx或Split?

回答

1

使用爲特定目的而創建的工具總是很好的。在這種情況下,System.Xml。有幾個原因:首先,它需要很多工作量(在這種情況下是解析)。其次,它在一個你不能自己完成的級別上進行了優化,並且將比你創建的任何自定義實現工作得更快(當然,對於一個簡單的xml,這可能並不完全正確,但是對於一般案件)。該體系結構還構建,它會給你很好的反饋,以防錯誤或無效的xmls;另外,訪問屬性或元素只是一個簡單的方法調用。

如果您的要求在將來發生變化,爲了獲得不同於A的東西,該怎麼辦?或者如果你的xml結構變得更復雜了呢?使用專門的工具將限制您在這種情況下需要進行的代碼更改量。

+0

所以也許我應該問的是:有沒有人有一個很好的例子解析一個愚蠢的簡單的XML使用System.XML? – 2014-11-15 14:20:33

+0

我想你需要問一個新問題...... – 2014-11-16 17:48:20

+0

所以我做的是在MS站點上找到一些使用System.Xml的XmlDocument的示例代碼,然後開始剪切行直到它停止工作。結果只有三行!如果MS添加了另一個「新」情況,那麼可以刪除其中的一個,x = new XmlDocument(withString)。 – 2014-12-12 21:46:18