本帖最后由 shimin555 于 2013-12-31 15:44:44 编辑

解决方案 »

  1.   

    xmldocument和linq的xdocument都可以,自己看msdn
      

  2.   

    我鼓捣了一天了,能读取那两组,但是把name data 分别取值取不到,求教
      

  3.   

    斑竹说了俩不错的方法,xmldocument比较简单点。load对应的xml文件,然后取到根节点,一级级的往下找你需要找的数据。最好贴出你的代码。
      

  4.   

    var xdoc = XDocument.Load(dirPath + "prog_AutoUpdate/AutoUpdater.xml");
                var result = from item in xdoc.Descendants("UpdateFileList") select item; 如何能读出name 和size的值
      

  5.   

            static void Main()
            {
                var xml = @"
    <AutoUpdate>
        <UpdateTime value=""2013.12.25"" />
        <UpdateSize size="""" />
        <UpdateFileList>
            <UpdateFile name=""dztlogo.png"" data=""100"" />
            <UpdateFile name=""周杰伦 - 回到过去.ape"" data=""10"" />
        </UpdateFileList>
    </AutoUpdate>
    ";
                var res = ReadFromXml(xml);            foreach (var item in res)
                    Console.WriteLine("{0}={1}", item.Name, item.Data);            Console.ReadKey();
            }        class Result
            {
                public string Name { get; set; }
                public string Data { get; set; }
            }        static List<Result> ReadFromXml(string xml)
            {
                var res = new List<Result>();            var doc = new System.Xml.XmlDocument();
                doc.LoadXml(xml);
                //or you can read xml from file:
                //doc.Load(xml);    //xml means file path            var nodes = doc.SelectNodes("/AutoUpdate/UpdateFileList/UpdateFile");
                foreach (System.Xml.XmlElement item in nodes)
                {
                    var value = new Result
                    {
                        Name = item.Attributes["name"].Value,
                        Data = item.Attributes["data"].Value
                    };                res.Add(value);
                }            return res;
            }
      

  6.   

    LINQ to XML我不太熟。我告诉你我的本方法吧。load之后,取到UpdateSize节点,假设这个节点叫updateSize,然后string size = updateSize.Attributes["size"].InnerText;你试试
      

  7.   

    ps:
    你贴的xml代码倒数第四行倒数第二字符处漏了一个双引号错误格式的xml会导致XmlDocument.LoadXml(string)函数出错 
      

  8.   

    谢谢 给你的方法哈 我用LINQ实现了