当前位置: 代码迷 >> VB Dotnet >> 怎么读取一个xml文件到数组
  详细解决方案

怎么读取一个xml文件到数组

热度:126   发布时间:2016-04-25 02:06:08.0
如何读取一个xml文件到数组
我想读取一个xml文件,内容如下,将其中的id和c写到一个数组,data(id,c)里面,从来没接触过xml文件,不知道如何读取,还请大侠指点一二,谢谢。
<?xml version="1.0" encoding="gbk" ?> 
- <lottery code="01" createTime="2015-01-11 09:35:03">
  <p id="2013117" c="09,12,13,24,27,33|16" t="2013-10-06 00:00:00" /> 
  <p id="2013116" c="12,15,21,26,32,33|07" t="2013-10-03 00:00:00" /> 
  <p id="2013115" c="03,12,16,17,18,27|08" t="2013-10-01 00:00:00" /> 
  <p id="2013114" c="04,06,17,21,23,33|07" t="2013-09-29 00:00:00" /> 
  <p id="2013113" c="04,07,11,17,24,33|09" t="2013-09-26 00:00:00" /> 
  <p id="2013112" c="01,06,12,13,22,31|07" t="2013-09-24 00:00:00" /> 
  <p id="2013111" c="01,02,03,06,08,33|13" t="2013-09-22 00:00:00" /> 
  </lottery>

------解决思路----------------------
刚看到你这是 vb.net 论坛,给你改一个 vb.net的。我平常不用vb.net,这是照着上面的c# 瞎蒙着改写的:
Module Module1

    Sub Main()
        Dim s As String = "<?xml version=""1.0"" encoding=""gbk"" ?>" +
            "<lottery code=""01"" createTime=""2015-01-11 09:35:03"">" +
  "<p id=""2013117"" c=""09,12,13,24,27,33
------解决思路----------------------
16"" t=""2013-10-06 00:00:00"" /> " +
  "<p id=""2013116"" c=""12,15,21,26,32,33
------解决思路----------------------
07"" t=""2013-10-03 00:00:00"" /> " +
  "<p id=""2013115"" c=""03,12,16,17,18,27
------解决思路----------------------
08"" t=""2013-10-01 00:00:00"" />" +
  "<p id=""2013114"" c=""04,06,17,21,23,33
------解决思路----------------------
07"" t=""2013-09-29 00:00:00"" />" +
  "<p id=""2013113"" c=""04,07,11,17,24,33
------解决思路----------------------
09"" t=""2013-09-26 00:00:00"" />" +
  "<p id=""2013112"" c=""01,06,12,13,22,31
------解决思路----------------------
07"" t=""2013-09-24 00:00:00"" />" +
  "<p id=""2013111"" c=""01,02,03,06,08,33
------解决思路----------------------
13"" t=""2013-09-22 00:00:00"" />" +
  "</lottery>"
        Dim result = (From x In XDocument.Parse(s).Elements().First().Elements()
                       Select New With {
                         .id = x.Attribute("id").Value,
                         .c = x.Attribute("c").Value,
    .t = x.Attribute("t").Value
                     }).ToList()
        For Each x In result
            Console.WriteLine("id={0}, c={1}, t={2}", x.id, x.c, x.t)
        Next
        Console.WriteLine("_________________按任意键结束。")
        Console.ReadKey()

    End Sub

End Module


对于 .net 来说,不同语言只是“体验”不同,程序核心都是基于 .net framework 技术的知识,而不是语言本身的语法。
  相关解决方案