-2

伙计们,我需要对我的 XML 字符串列表数据进行硬编码,然后将其显示为控制台窗口中的以下内容!

<Photos>
    <Photo> p1.jpg </Photo>
        <Photo> p2.jpg </Photo>
    <Photo> p3.jpg </Photo>
    <Photo> p4.jpg </Photo>
    <Photo> p5.jpg </Photo>
</Photos>

这是我到目前为止所做的!

namespace ConsoleApplication17
{
    class Program
    {
        static void Main(string[] args)
        {
            List<string> list = new List<string>();
            list.Add("p1.jpg");
            list.Add("p2.jpg");
            list.Add("p3.jpg");
        }
    }
}

感谢任何帮助!

4

1 回答 1

0

您想将您的转换xmlList<string>()?

在这种情况下,使用LINQ to XML

var str = @"<Photos>
    <Photo> p1.jpg </Photo>
    <Photo> p2.jpg </Photo>
    <Photo> p3.jpg </Photo>
    <Photo> p4.jpg </Photo>
    <Photo> p5.jpg </Photo>
    </Photos>";

XDocument.Parse(str)
    .Descendants("Photo")
    .Select (s => s.Value)
    .ToList<string>();

或者,如果您想创建 XML:

var xPhotos = new XElement("Photos");
for (var x = 1; x < 6; x++) {
    xPhotos.Add(new XElement("Photo", "p" + x + ".jpg"));
}
var xdoc = new XDocument(xPhotos);

以上假设您的 jpg 名称有一个数字限制。


或者,如果您想从List<string>()已有的创建 xml:

// your existing code:
List<string> list = new List<string>();
            list.Add("p1.jpg");
            list.Add("p2.jpg");
            list.Add("p3.jpg");

// to xml:
var xPhotos = new XElement("Photos");
foreach(string x in list)
    xPhotos.Add(new XElement("Photo", x));
var xdoc = new XDocument(xPhotos);
于 2013-07-31T04:20:33.357 回答