C#中XML基礎(chǔ)用法
什么是XML?
XML:可擴(kuò)展標(biāo)記語(yǔ)言。
XML的作用:
純文本,兼容性強(qiáng)。
和HTML的區(qū)別:
xml: 主要用來(lái)處理、存儲(chǔ)數(shù)據(jù)。無(wú)規(guī)定標(biāo)簽,可擴(kuò)展。
html:對(duì)數(shù)據(jù)的顯示和描述。 語(yǔ)法標(biāo)簽固定。
XML語(yǔ)法特點(diǎn):
區(qū)分大小寫(xiě)。
只能有一個(gè)根節(jié)點(diǎn)。
標(biāo)簽成對(duì)出現(xiàn)。
屬性用雙引號(hào)。
沒(méi)有預(yù)定標(biāo)簽,用什么寫(xiě)什么
文檔聲明:<?xml version=".." encoding="...">
注釋?zhuān)?<!--? ?-->
CDATA: 原意文本 <![CDATA[..] ] >
xmldocument 操作:
class Program
{
static void Main(string[] args)
{
//實(shí)現(xiàn)xml的寫(xiě)入
//1、在內(nèi)存中構(gòu)建Dom對(duì)象
XmlDocument xmlDoc = new XmlDocument();
//增加文檔說(shuō)明
XmlDeclaration xmlDeclaration = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", "yes");
xmlDoc.AppendChild(xmlDeclaration);
//增加根元素
// 創(chuàng)建根元素
XmlElement rootElement = xmlDoc.CreateElement("school");
xmlDoc.AppendChild(rootElement);
//3、增加子元素,接下來(lái)添加的子元素增加到rootElement節(jié)點(diǎn)下
XmlElement xmlClassElement = xmlDoc.CreateElement("class");
// 為class元素添加id屬性
XmlAttribute attr = xmlDoc.CreateAttribute("id");
attr.Value = "x01";
xmlClassElement.Attributes.Append(attr);
rootElement.AppendChild(xmlClassElement);
//4、為class創(chuàng)建student節(jié)點(diǎn)。
XmlElement xmlStudentElement = xmlDoc.CreateElement("student");
// 為student元素添加sid 屬性.
XmlAttribute studentAttr = xmlDoc.CreateAttribute("sid");
studentAttr.Value = "s011";
xmlStudentElement.Attributes.Append(studentAttr);
xmlClassElement.AppendChild(xmlStudentElement);
//student中增加name節(jié)點(diǎn)。
XmlElement xmlNameElement = xmlDoc.CreateElement("name");
xmlNameElement.InnerText = "天";
xmlStudentElement.AppendChild(xmlNameElement);
//2、將該Dom對(duì)象寫(xiě)入xml文件中
xmlDoc.Save("school.xml");
Console.WriteLine("ok");
}
}
以上方法可以用循環(huán)寫(xiě)入。
xdocument 操作。
class Program
{
static void Main(string[] args)
{
// 通過(guò)xdocument 寫(xiě)入文件
List<Person> list = new List<Person>();
list.Add(new Person() { Name = "Sam", Age = 18 });
list.Add(new Person() { Name = "Penny", Age = 20 });
// 1、 創(chuàng)建Dom對(duì)象。
XDocument xDoc = new XDocument();
XDeclaration xDec = new XDeclaration("1.0", "utf-8", null);
// 設(shè)置文檔定義
xDoc.Declaration = xDec;
//2、創(chuàng)建根節(jié)點(diǎn)
XElement rootElement = new XElement("List");
xDoc.Add(rootElement);
//3、循環(huán)創(chuàng)建節(jié)點(diǎn)
for (int i = 0; i < list.Count; i++)
{
XElement PersonElement = new XElement("Person");
PersonElement.SetAttributeValue("id", (i + 1).ToString());
PersonElement.SetElementValue("Name", list[i].Name);
PersonElement.SetElementValue("Age", list[i].Age);
rootElement.Add(PersonElement);
}
xDoc.Save("List.xml");
Console.WriteLine("ok");
}
}
class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
class Program
{
static void Main(string[] args)
{
//讀取XML文件。
XDocument document = XDocument.Load("List.xml");
XElement rootElement = document.Root;
Console.WriteLine("訂購(gòu)人:{0}",rootElement.Element("CustomerName").Value);
foreach (var item in rootElement.Element("Items").Elements("OrderItem"))
{
Console.WriteLine("商品名稱(chēng):{0}",item.Attribute("Name").Value);
}
}
}
到此這篇關(guān)于C#中XML基礎(chǔ)用法的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
簡(jiǎn)述C#枚舉高級(jí)戰(zhàn)術(shù)
這篇文章主要介紹了簡(jiǎn)述C#枚舉高級(jí)戰(zhàn)術(shù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
C#實(shí)現(xiàn)餐飲管理系統(tǒng)完整版
這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)餐飲管理系統(tǒng)的完整版,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01
C#動(dòng)態(tài)創(chuàng)建button的方法
這篇文章主要介紹了C#動(dòng)態(tài)創(chuàng)建button的方法,涉及C#按鈕屬性動(dòng)態(tài)設(shè)置的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08
C#實(shí)現(xiàn)json格式數(shù)據(jù)解析功能的方法詳解
這篇文章主要介紹了C#實(shí)現(xiàn)json格式數(shù)據(jù)解析功能的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了C#解析json格式數(shù)據(jù)的具體操作步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-12-12
C#?設(shè)置Chart的X軸為時(shí)間軸???????詳情
這篇文章主要介紹了C#設(shè)置Chart的X軸為時(shí)間軸???????詳情,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08

