使用linq to xml可以很方便的實現(xiàn)對xml文件的訪問,在網(wǎng)上看到的寫的這方面的帖子都稍微有一些混亂。今天博客園主頁上轉(zhuǎn)過來的那篇文章寫的也比較不清楚,下面把我在平常中使用linq to xml訪問文件的方式寫下來,供沒有寫過的兄弟參考: 首先第一步是選中要訪問xml文件的屬性copy to out(如test.xml),選擇always,這步的意思是這個xml文件始終會被輸出到可執(zhí)行文件所在的文件夾,這樣我們才可以直接使用不帶路徑的文件名來訪問它。下面來看這個xml文件的內(nèi)容: <?xml version="1.0" encoding="gb2312" ?> <!--第三種xml格式,搭配前兩種--> <ThirdSytle> <Root></Root>只是表明xml的根節(jié)點,<FirstSytle></FirstStyle>定義第一種格式,可以無限嵌套節(jié)點,<Test>是<FirstStyle>的一個多值嵌套子節(jié)點,節(jié)點中已經(jīng)賦了三個“值”:one two three ,在后面的代碼中,將說明怎么讀取這幾個值。<SecondStyle> 定義第二種格式,<Test_>節(jié)點中沒有“值”,但是卻增加了“屬性”name 和 value ,屬性的名字可以自定義。我們在后面也會說明如何讀取這些屬性里面的值。這兩種方式可以配合使用,就是xml中的第三種模式,不做另外的說明,在下面的訪問代碼中也沒有做訪問實例,可以參考前兩種自己組合,下面來看代碼: using System; namespace LinqXml //第二種xml格式的讀法 在進行xml節(jié)點選擇的時候,自外而內(nèi),跟節(jié)點不用選,使用節(jié)點名稱選擇。如果該節(jié)點是單節(jié)點(如幾種Style的節(jié)點),則應該用Element("")來選擇,如果是多節(jié)點(如<Test>),則必須使用Elements("")來選擇,如果選用Element(""),則只會返回該類節(jié)點的第一個。linq 語法稍微解釋一下,from制定選擇的范圍,where指定選擇的條件,selete 指定選擇的目標。如果不明白可以把代碼實踐一下調(diào)試看看 |