C#和XML中的字符串列表
本文关键字:字符串 列表 XML | 更新日期: 2023-09-27 18:25:31
伙计们,我需要硬编码我的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");
}
}
}
感谢您的帮助!
您想将xml
转换为List<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);