xml文件讀寫


寫入

XDocument document = new XDocument();
XElement root = new XElement(Root);
foreach(var columnDto in columns)
{
	XElement column = new XElement(Column);
	column.SetElementValue(nameof(columnDto.Name), columnDto.Name);
	column.SetElementValue(nameof(columnDto.AliasName), columnDto.AliasName);
	column.SetElementValue(nameof(columnDto.IsCanNotModify), columnDto.IsCanNotModify);
	root.Add(column);
}
root.Save(filePath);

讀取

List<ColumnDto> columns = new List<ColumnDto>();
//將XML文件加載進來
XDocument document = XDocument.Load(filePath);
//獲取到XML的根元素進行操作
XElement root = document.Root;
//獲取根元素下的所有子元素
IEnumerable<XElement> enumerable = root.Elements();
foreach (XElement column in enumerable)
{
	ColumnDto columnDto = new ColumnDto();
	foreach (XElement property in column.Elements())
	{
		if (property.Name == nameof(columnDto.Name))
		{
			columnDto.Name = property.Value;
		}
		else if(property.Name == nameof(columnDto.AliasName))
		{
			columnDto.AliasName = property.Value;
		}
		else if (property.Name == nameof(columnDto.IsCanNotModify))
		{
			columnDto.IsCanNotModify = bool.Parse(property.Value);
		}
		//Console.WriteLine($"{property.Name}:{property.Value}");   
	}
	columns.Add(columnDto);
	//Console.WriteLine(column.Attribute("id").Value);
}
return columns;

ColumnDto

public class ColumnDto
{
	public string Name { get; set; }
	public string AliasName { get; set; }
	public bool IsCanNotModify { get; set; }
}

獲得結果

<?xml version="1.0" encoding="utf-8"?>
<Root>
  <Column>
    <Name>Time</Name>
    <AliasName>時間</AliasName>
    <IsCanNotModify>false</IsCanNotModify>
  </Column>
</Root>

示例代碼

ReadAndWriteXmlDemo


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM