您的位置:首页 > 其它

XML创建、读取、追加的例子

2015-09-21 16:56 399 查看
XML:可扩展的标记语言

例子1: 创建带属性的xml

XmlDocument doc =
new XmlDocument();
XmlDeclaration dec= doc.CreateXmlDeclaration("1.0",
"utf-8","yes");
doc.AppendChild(dec);

XmlElementorder = doc.CreateElement("Order");
doc.AppendChild(order);

XmlElementcustomerName = doc.CreateElement("CustomerName");
customerName.InnerXml =
"<p>我是一个p标签</p>";
order.AppendChild(customerName);

XmlElementcustomerNumber = doc.CreateElement("CustomerNumber");
customerNumber.InnerText =
"<p>我是一个p标签</p>";
order.AppendChild(customerNumber);

XmlElementitems = doc.CreateElement("Items");
order.AppendChild(items);

XmlElementorderItem1 = doc.CreateElement("OrderItem");
//给节点添加属性
orderItem1.SetAttribute("Name",
"充气娃娃");
orderItem1.SetAttribute("Count",
"10");
items.AppendChild(orderItem1);

XmlElementorderItem2 = doc.CreateElement("OrderItem");
//给节点添加属性
orderItem2.SetAttribute("Name",
"充气娃娃");
orderItem2.SetAttribute("Count",
"10");
items.AppendChild(orderItem2);

XmlElementorderItem3 = doc.CreateElement("OrderItem");
//给节点添加属性
orderItem3.SetAttribute("Name",
"充气娃娃");
orderItem3.SetAttribute("Count",
"10");
items.AppendChild(orderItem3);

doc.Save("Order.xml");
Console.WriteLine("保存成功");
Console.ReadKey();

例子2:追加XML文档

static void Main(string[] args)
{
//追加XML文档
XmlDocument doc=
new XmlDocument();
XmlElementbooks;
if (File.Exists("Books.xml"))
{
//如果文件存在 加载XML
doc.Load("Books.xml");
//获得文件的根节点
books = doc.DocumentElement;
}
else
{
//如果文件不存在
//创建第一行
XmlDeclaration dec= doc.CreateXmlDeclaration("1.0",
"utf-8", null);
doc.AppendChild(dec);
//创建跟节点
books = doc.CreateElement("Books");
doc.AppendChild(books);
}
//5、给根节点Books创建子节点
XmlElementbook1 = doc.CreateElement("Book");
//将book添加到根节点
books.AppendChild(book1);

//6、给Book1添加子节点
XmlElementname1 = doc.CreateElement("Name");
name1.InnerText =
"c#开发大全";
book1.AppendChild(name1);

XmlElementprice1 = doc.CreateElement("Price");
price1.InnerText =
"110";
book1.AppendChild(price1);

XmlElementdes1 = doc.CreateElement("Des");
des1.InnerText = "看不懂";
book1.AppendChild(des1);

doc.Save("Books.xml");
Console.WriteLine("保存成功");
Console.ReadKey();

}

例子3:读取xml文档

static
void Main(string[] args)
{
//XmlDocument doc = new XmlDocument();
////加载要读取的XML
//doc.Load("Books.xml");

////获得根节点
//XmlElement books = doc.DocumentElement;

////获得子节点 返回节点的集合
//XmlNodeListxnl = books.ChildNodes;

//foreach (XmlNode item in xnl)
//{
// Console.WriteLine(item.InnerText);
//}
//Console.ReadKey();

//读取带属性的XML文档

//XmlDocument doc = new XmlDocument();
//doc.Load("Order.xml");
//Xpath

//XmlDocument doc = new XmlDocument();
//doc.Load("Order.xml");
//XmlNodeList xnl = doc.SelectNodes("/Order/Items/OrderItem");

//foreach (XmlNode node in xnl)
//{
// Console.WriteLine(node.Attributes["Name"].Value);
// Console.WriteLine(node.Attributes["Count"].Value);
//}
//Console.ReadKey();
//改变属性的值
//XmlDocument doc = new XmlDocument();
//doc.Load("Order.xml");
//XmlNode xn =doc.SelectSingleNode("/Order/Items/OrderItem[@Name='190']");
//xn.Attributes["Count"].Value ="200";
//xn.Attributes["Name"].Value = "颜世伟";
//doc.Save("Order.xml");
//Console.WriteLine("保存成功");

XmlDocument doc=
new XmlDocument();

doc.Load("Order.xml");

XmlNode xn= doc.SelectSingleNode("/Order/Items");

xn.RemoveAll();
doc.Save("Order.xml");
Console.WriteLine("删除成功");
Console.ReadKey();

////获得文档的根节点
//XmlElement order = doc.DocumentElement;
//XmlNodeList xnl = order.ChildNodes;
//foreach (XmlNode item in xnl)
//{
// ////如果不是Items
就continue
// //if (item[])
// //{
// // continue;
// //}
// Console.WriteLine(item.Attributes["Name"].Value);
// Console.WriteLine(item.Attributes["Count"].Value);
//}
Console.ReadKey();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: