읽기:
//打开某文件(假设web.config在根目录中) string filename=Server.MapPath("/") + @"Webapplication1\web.config"; xmlDocument xmldoc= new XmlDocument(); xmldoc.Load(filename); //得到顶层节点列表 XmlNodeList topM=xmldoc.DocumentElement.ChildNodes; foreach(XmlElement element in topM) { if(element.Name.ToLower()=="appsettings") { //得到该节点的子节点 XmlNodeList nodelist=element.ChildNodes; if ( nodelist.Count >0 ) { //DropDownList1.Items.Clear(); foreach(XmlElement el in nodelist)//读元素值 { //DropDownList1.Items.Add(el.Attributes["key"].InnerXml); //this.TextBox2.Text=el.Attributes["key"].InnerText; this.TextBox2.Text=el.Attributes["key"].Value; this.Label1.Text=el.Attributes["value"].Value; //同样在这里可以修改元素值,在后面save。 // el.Attributes["value"].Value=this.TextBox2.Text; } } } }
노드 아래에 요소를 추가하고 두 개의 속성을 추가합니다.
if(element.Name.ToLower()=="appsettings") { XmlElement elem =xmldoc.CreateElement("add"); element.AppendChild(elem); elem.InnerText="ltp"; xmldoc.Save(filename); }
<appSettings> <add key="密码" value="admin" /> <add>ltp</add> </appSettings>
if(element.Name.ToLower()=="appsettings") { XmlElement elem =xmldoc.CreateElement("add"); element.AppendChild(elem); XmlAttribute xa=xmldoc.CreateAttribute("key"); xa.Value="ltp"; XmlAttribute xa2=xmldoc.CreateAttribute("value"); xa2.Value="first"; elem.SetAttributeNode(xa); elem.SetAttributeNode(xa2); xmldoc.Save(filename); }
<appSettings> <add key="密码" value="admin" /> <add key="ltp" value="first" /> </appSettings> //添加空元素: XmlNode node=doc.CreateElement(groupname); node.InnerText=""; doc.LastChild.AppendChild(node); doc.Save(xmlfile);