用xml增删改查xml文件格式

发布时间:2019-07-18编辑:脚本学堂
本文主要提到,如何用xml 的方式处理数据,其中包括对xml 的增加数据,删除数据,和改动,查找数据的操作方法:

xml文件操作示例,增删改查。

1,xml文件
 

复制代码 代码示例:
<?xml version="1.0"?>
<dbGuest>
  <User>
    <Name uid="d">ew</Name>
    <City>dsa</City>
    <Email>eq</Email>
  </User>
</dbGuest>

2,c#代码
 

复制代码 代码示例:

//操作方式创建XML文件
private void btnCreateXml_Click(object sender, System.EventArgs e)
{
 //创建XML文档对象
System.Xml.XmlDocument xmldoc = new System.Xml.XmlDocument();

//创建xml 声明节点
System.Xml.XmlNode xmlnode = xmldoc.CreateNode(System.Xml.XmlNodeType.XmlDeclaration, "", "");

//添加上述创建和 xml声明节点
xmldoc.AppendChild(xmlnode);

//创建xml dbGuest 元素(根节点)
System.Xml.XmlElement xmlelem = xmldoc.CreateElement("", "dbGuest", "");
xmldoc.AppendChild(xmlelem);

try
{
    xmldoc.Save(xmlFile);
}
catch(Exception ex)
{
    if(ex.Message.IndexOf("访问被拒绝") != -1)
    {
        lblMsg.Text = "创建xml文档失败,没有写入权限,请检查xmldocs文件夹的写入权限!";
        return;
    }   
}

lblMsg.Text = "xml文件创建成功";
BindXMLFiles();
GetXmlContent();
BindUserNames();
}

//添加用户
private void btnAdd_Click(object sender, System.EventArgs e)
{
string uID = txtUID.Text;
string userName = txtUserName.Text;
string City = txtCity.Text;
string Email = txtEmail.Text;
if(!System.IO.File.Exists(xmlFile))
{
lblMsg.Text = "xml文件"+xmlFile+"不存在,请先点击创建!";
return;
}

XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(xmlFile);    //加载文件
XmlNode root = xmlDoc.SelectSingleNode("dbGuest");//查找<dbGuest>
XmlElement xe_dbGuest_User = xmlDoc.CreateElement("User");//创建一个<User>节点
XmlElement xe_dbGuest_User_Name = xmlDoc.CreateElement("Name");
xe_dbGuest_User_Name.InnerText = userName;//设置文本节点
XmlAttribute a = xmlDoc.CreateAttribute("uid");//创建一个属性
a.Value = uID;
xe_dbGuest_User_Name.Attributes.Append(a);//增加一个属性
xe_dbGuest_User.AppendChild(xe_dbGuest_User_Name);//添加到<User>节点中
XmlElement xe_dbGuest_User_City    = xmlDoc.CreateElement("City");//创建City节点
xe_dbGuest_User_City.InnerText    = City;
xe_dbGuest_User.AppendChild(xe_dbGuest_User_City);//添加到<User>节点中
XmlElement xe_dbGuest_User_Email    = xmlDoc.CreateElement("Email");//创建Email节点
xe_dbGuest_User_Email.InnerText    = Email;
xe_dbGuest_User.AppendChild(xe_dbGuest_User_Email);
root.AppendChild(xe_dbGuest_User);//添加到<dbGuest>节点中
xmlDoc.Save(xmlFile);//保存文件
lblMsg.Text = "成功添加用户";
GetXmlContent();
BindXML();
BindUserNames();
}