国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
c#中使用linq to xml訪問xml文件
c#中使用linq to xml訪問xml文件
2010-04-07 17:35

使用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" ?>
<Root>
<!--第一種xml的格式-->
<FirstStyle>
  <Test>one</Test>
  <Test>two</Test>
  <Test>three</Test>
</FirstStyle>

<!--第二種xml格式,配置文件中常用的格式-->
<SecondStyle>
  <Test_ name="firstname" value="xu"/>
  <Test_ name="lastname" value="jin"/>
  <Test_ name="lastname" value="lin"/>
</SecondStyle>

<!--第三種xml格式,搭配前兩種-->

<ThirdSytle>
  <Test1 name="test1">test1_value</Test1>
</ThirdSytle>
</Root>

  <Root></Root>只是表明xml的根節(jié)點,<FirstSytle></FirstStyle>定義第一種格式,可以無限嵌套節(jié)點,<Test>是<FirstStyle>的一個多值嵌套子節(jié)點,節(jié)點中已經(jīng)賦了三個“值”:one two three ,在后面的代碼中,將說明怎么讀取這幾個值。<SecondStyle> 定義第二種格式,<Test_>節(jié)點中沒有“值”,但是卻增加了“屬性”name 和 value ,屬性的名字可以自定義。我們在后面也會說明如何讀取這些屬性里面的值。這兩種方式可以配合使用,就是xml中的第三種模式,不做另外的說明,在下面的訪問代碼中也沒有做訪問實例,可以參考前兩種自己組合,下面來看代碼:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Xml.Linq;

namespace LinqXml
{
  class Program
  {
    static void Main(string[] args)
    {
      //第一種xml格式的讀法
      var firstCollection = from test in XElement.Load("test.xml").Element("FirstStyle").Elements("Test")
                select test.Value;
      foreach (string s in firstCollection)
      {
        Console.WriteLine(s);
      }

      //第二種xml格式的讀法
      var secondCollection = from test in XElement.Load("test.xml").Element("SecondStyle").Elements("Test_")
                 where test.Attribute("name").Value.Equals("lastname")
                 select test.Attribute("value").Value;
      foreach (string s in secondCollection)
      {
        Console.WriteLine(s);
      }
    }
  }
}

  在進行xml節(jié)點選擇的時候,自外而內(nèi),跟節(jié)點不用選,使用節(jié)點名稱選擇。如果該節(jié)點是單節(jié)點(如幾種Style的節(jié)點),則應該用Element("")來選擇,如果是多節(jié)點(如<Test>),則必須使用Elements("")來選擇,如果選用Element(""),則只會返回該類節(jié)點的第一個。linq 語法稍微解釋一下,from制定選擇的范圍,where指定選擇的條件,selete 指定選擇的目標。如果不明白可以把代碼實踐一下調(diào)試看看

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
C#使用Linq操作Xml文件(創(chuàng)建xml文件、增刪改查xml文件節(jié)點信息)的方法
C#操作XML
iOS的輕量級XML解析庫 TBXML
spring&dom4j
Java操作XML文件 dom4j 篇
DOM4J解析xml文件
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服