C#通過XML節(jié)點(diǎn)屬性/屬性值讀取寫入XML操作代碼實(shí)例
1.XML的內(nèi)容如下:
<?xml version="1.0" encoding="utf-8" ?>
<root>
<title>
<settings id = "0" name = "顯示文字">歡迎您!智慧服務(wù),互動(dòng)體驗(yàn)......</settings>
<settings id = "1" name = "字體">微軟雅黑</settings>
<settings id = "2" name = "顏色">Yellow</settings>
<settings id = "3" name = "字體尺寸">48</settings>
</title>
<menu>
<submu id="0" name="部門分布"/>
<submu id="1" name="宣傳視頻"/>
<submu id="2" name="部門宣傳"/>
<submu id="3" name="會(huì)議安排"/>
</menu>
<mu1>
<submu id = "0" name = "iCentroView產(chǎn)品">
<video id = "0">Videos/ICV.mp4</video>
</submu>
<submu id = "1" name = "員工社區(qū)">
<video id = "0">Videos/ygsqxcp.mp4</video>
</submu>
<submu id = "2" name = "三維展示">
<video id = "0">Videos/iBaosight.mp4</video>
</submu>
<submu id = "1" name = "好生活宣傳">
<video id = "0">Videos/goodlift.mp4</video>
</submu>
</mu1>
<main>Picture/main.jpg</main>
</root>
2.獲得XML文檔
private static string url = AppDomain.CurrentDomain.SetupInformation.ApplicationBase+"Config\\config.xml";
private XmlDocument xmlDoc;
private XmlNode root;
public static string Title;
public XMLHandler()
{
xmlDoc = new XmlDocument();
LoadConfig();
}
private void LoadConfig()
{
try
{
xmlDoc.Load(url);
root = xmlDoc.SelectSingleNode("root");
}
catch (Exception e)
{
throw e;
}
}
3.通過屬性名稱讀取XML節(jié)點(diǎn)中的內(nèi)容
public TitleModel GetTitle()
{
try
{
TitleModel title = new TitleModel();
XmlNode node = root.FirstChild;
if(node!=null)
{
foreach (XmlNode nd in node.ChildNodes)
{
XmlElement element = (XmlElement)nd;
if (element.GetAttribute("name") == "顯示文字")
{
title.Title = nd.InnerText;
}
else if (element.GetAttribute("name") == "字體尺寸")
{
title.FontSize = Convert.ToInt32(nd.InnerText);
}
else if (element.GetAttribute("name") == "顏色")
{
title.FontColor = FontColor(nd.InnerText);
}
else if (element.GetAttribute("name") == "字體")
{
title.FontFamily = nd.InnerText;
}
}
}
return title;
}
catch (Exception e)
{
throw e;
}
}
4.通過屬性讀取XML中節(jié)點(diǎn)的屬性值
public List<string> GetMenuString()
{
try
{
List<string> list=new List<string>();
XmlNode menu = root.ChildNodes[1];
if (menu != null)
{
foreach (XmlNode node in menu.ChildNodes)
{
XmlElement element = (XmlElement)node;
list.Add(element.GetAttribute("name"));
}
}
return list;
}
catch (Exception e)
{
throw e;
}
}
5.通過節(jié)點(diǎn)獲取XML節(jié)點(diǎn)中的內(nèi)容
public string GetMainBackground()
{
string url ="Images/mainjpg";
try
{
XmlNode node = root.LastChild;
if (node != null)
{
url = node.InnerText;
}
return url;
}
catch (Exception e)
{
throw e;
}
}
- 詳解C# 匿名對(duì)象(匿名類型)、var、動(dòng)態(tài)類型 dynamic
- C#通過屬性名稱獲取(讀取)屬性值的方法
- C#正則表達(dá)式獲取下拉菜單(select)的相關(guān)屬性值
- C#讀取XML中元素和屬性值的實(shí)現(xiàn)代碼
- C#動(dòng)態(tài)對(duì)象(dynamic)詳解(實(shí)現(xiàn)方法和屬性的動(dòng)態(tài))
- C#實(shí)現(xiàn)獲取不同對(duì)象中名稱相同屬性的方法
- C#中使用反射遍歷一個(gè)對(duì)象屬性及值的小技巧
- C#利用反射來判斷對(duì)象是否包含某個(gè)屬性的實(shí)現(xiàn)方法
- C#實(shí)現(xiàn)讀取匿名對(duì)象屬性值的方法示例總結(jié)
相關(guān)文章
C#控制Excel Sheet使其自適應(yīng)頁寬與列寬的方法
這篇文章主要介紹了C#控制Excel Sheet使其自適應(yīng)頁寬與列寬的方法,涉及C#操作Excel的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06
C#中通過LRU實(shí)現(xiàn)通用高效的超時(shí)連接探測
這篇文章主要介紹了c#中通過LRU實(shí)現(xiàn)通用高效的超時(shí)連接探測,非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2018-11-11
C# string轉(zhuǎn)換為幾種不同編碼的Byte[]的問題解讀
這篇文章主要介紹了C# string轉(zhuǎn)換為幾種不同編碼的Byte[]的問題解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02

