How can I transform XML into a List or String[]?

后端 未结 8 1745
半阙折子戏
半阙折子戏 2020-12-01 08:19

How can I transform the following XML into a List or String[]:


  1
  2<         


        
8条回答
  •  再見小時候
    2020-12-01 08:46

    It sounds like you're more after just parsing rather than full XML serialization/deserialization. If you can use LINQ to XML, this is pretty easy:

    using System;
    using System.Linq;
    using System.Xml.Linq;
    
    public class Test
    {
        static void Main()
        {
            string xml = "12";
    
            XDocument doc = XDocument.Parse(xml);
    
            var list = doc.Root.Elements("id")
                               .Select(element => element.Value)
                               .ToList();
    
            foreach (string value in list)
            {
                Console.WriteLine(value);
            }
        }
    }
    

    In fact the call to Elements could omit the argument as there are only id elements, but I thought I'd demonstrate how to specify which elements you want.

    Likewise I'd normally not bother calling ToList unless I really needed a List - without it, the result is IEnumerable which is fine if you're just iterating over it once. To create an array instead, use ToArray.

提交回复
热议问题