1、示例XML文件:Demo.xml
<?xml version="1.0" encoding="utf-8" ?> <note> <conf> <to>infozero</to> <from>lerroy</from> <heading>测试信息</heading> <body>第一条测试信息</body> <title name="我的第一条消息">from myself</title> </conf> <conf> <to>infozero@163.com</to> <from>text</from> <heading> 时刻提醒我 </heading> <body>这是一条测试信息!</body> <title name="我的第二条消息">from others</title> </conf> </note>
2、在程序中引用以下命名空间
using System; using System.Linq; using System.Xml.Linq;
3、读取代码如下:
class Program { static void Main(string[] args) { XDocument doc = XDocument.Load("demo.xml"); var text = from t in doc.Descendants("conf") //定位到节点 .Where(w => w.Element("to").Value.Contains('@')) //若要筛选就用上这个语句 select new { to = t.Element("to").Value, froms = t.Element("from").Value, head = t.Element("heading").Value, body = t.Element("body").Value, title = t.Element("title").Attribute("name").Value //注意此处用到 attribute }; foreach (var a in text) { Console.WriteLine(a.to); Console.WriteLine(a.froms); Console.WriteLine(a.head); Console.WriteLine(a.body); Console.WriteLine(a.title); } Console.ReadKey(); } }