user.xml
<?xml version="1.0" encoding="utf-8"?>
<user>
<person>
</person>
<person name="风拉" sex="男" age="">
<pass></pass>
<Address>大明</Address>
</person>
<person name="风云" sex="女" age="">
<pass></pass>
</person>
<person name="云" sex="女" age="">
<pass></pass>
<Address>松江区</Address>
</person>
</user> , private XmlDocument xmlDoc; //添加
private void InsertElement()
{ XmlNode xmldocselect = xmlDoc.SelectSingleNode("user");
XmlElement el = xmlDoc.CreateElement("person");
el.SetAttribute("name", "风云");
el.SetAttribute("sex", "女");
el.SetAttribute("age", "");
XmlElement xesub1 = xmlDoc.CreateElement("pass");
xesub1.InnerText = "";
el.AppendChild(xesub1);
xmldocselect.AppendChild(el);
XmlElement xx = xmlDoc.CreateElement("Address");
xx.InnerText = "松江区";
el.AppendChild(xx);
xmlDoc.Save(Server.MapPath("user.xml"));
}
//修改
private void UpdateElement()
{
LoadXml();
XmlNodeList nodeList = xmlDoc.SelectSingleNode("user").ChildNodes;
foreach (var item in nodeList)
{
XmlElement xe = (XmlElement)item;
if (xe.GetAttribute("name") == "风云")
{
xe.SetAttribute("name", "发明"); //如果下面有子节点在下走
XmlNodeList nls = xe.ChildNodes;//继续获取xe子节点的所有子节点
foreach (XmlNode xn1 in nls)//遍历
{
XmlElement xe2 = (XmlElement)xn1;//转换类型
if (xe2.Name == "pass")//如果找到
{
xe2.InnerText = "";//则修改
break; }
} break;
}
}
xmlDoc.Save(Server.MapPath("user.xml"));//保存 } //删除
private void DeleteElement()
{
LoadXml();
XmlNodeList nodeList = xmlDoc.SelectSingleNode("user").ChildNodes;
foreach (var item in nodeList)
{
XmlElement xe = (XmlElement)item;
if (xe.GetAttribute("name") == "发明")
{
xe.RemoveAll(); ////如果下面有子节点在下走
//XmlNodeList nls = xe.ChildNodes;//继续获取xe子节点的所有子节点
//foreach (XmlNode xn1 in nls)//遍历
//{
// XmlElement xe2 = (XmlElement)xn1;//转换类型
// if (xe2.Name == "pass")//如果找到
// {
// xe2.InnerText = "66666";//则修改
// break; // }
//} break;
}
}
xmlDoc.Save(Server.MapPath("user.xml"));//保存 } //显示
private void showIt()
{
LoadXml();
XmlNode xn = xmlDoc.SelectSingleNode("user");
XmlNodeList xnl = xn.ChildNodes;
foreach (var item in xnl)
{
XmlElement xe=(XmlElement)item;
Response.Write(xe.GetAttribute("name"));
}
}
//查找xml
private void LoadXml()
{
xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("User.xml"));
} adminFunction.xml <?xml version="1.0" encoding="utf-8" ?>
<functions>
<function name="商品发布" url="~/page/leaves/leave.aspx">
<subfunction name="添加商品" url="~/page/leaves/leave.aspx">
</subfunction>
<subfunction name="添加商品" url="~/page/leaves/leave.aspx">
</subfunction>
</function>
<function name="留言发布" url="~/page/leaves/leave.aspx">
<subfunction name="添加留言" url="~/page/leaves/leave.aspx">
</subfunction>
<subfunction name="修改留言" url="~/page/leaves/leave.aspx">
</subfunction>
</function>
</functions> private void InitFunctions()
{
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(Server.MapPath("adminFunction.xml"));
XmlNode root = xmldoc.DocumentElement;
tvFunction.Nodes.Add(CreateNode(root,new TreeNode()));
} //递归
/// <summary>
///
/// </summary>
/// <param name="node">根节点</param>
/// <param name="tn">根节点对应的树节点</param>
/// <returns></returns>
private TreeNode CreateNode(XmlNode root, TreeNode tn)
{ foreach (XmlNode node in root.ChildNodes)
{
XmlElement subxmlEmt = node as XmlElement;
string subname = subxmlEmt.GetAttribute("name");
string suburl = subxmlEmt.GetAttribute("url");
TreeNode subtn = new TreeNode();
subtn.Text = subname;
subtn.NavigateUrl = suburl;
if (node.HasChildNodes)
{
subtn.ChildNodes.Add(CreateNode(node, subtn));
}
tn.ChildNodes.Add(subtn);
}
return tn; } //读实例
private void ReadEx()
{
string path1 = Server.MapPath("TextFile.txt");
if (File.Exists(path1))
{
StreamReader reader = new StreamReader(path1, System.Text.Encoding.GetEncoding("gb2312")); string str = reader.ReadToEnd();
Response.Write((str));
reader.Close();
} WriteFile(path1,"vvvvv");
}
//写文件
/// </summary>
/// <param name="Path">文件路径</param>
/// <param name="Strings">文件内容</param>
public static void WriteFile(string Path, string Strings)
{ if (!System.IO.File.Exists(Path))
{
System.IO.FileStream f = System.IO.File.Create(Path);
f.Close();
}
System.IO.StreamWriter f2 = new System.IO.StreamWriter(Path, false, System.Text.Encoding.GetEncoding("gb2312"));
f2.Write(Strings);
f2.Close();
f2.Dispose();
}

asp.net xml 增删改操作的更多相关文章

  1. 使用python操作XML增删改查

    使用python操作XML增删改查 什么是XML? XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输 ...

  2. ASP.NET MVC深入浅出(被替换) 第一节: 结合EF的本地缓存属性来介绍【EF增删改操作】的几种形式 第三节: EF调用普通SQL语句的两类封装(ExecuteSqlCommand和SqlQuery ) 第四节: EF调用存储过程的通用写法和DBFirst模式子类调用的特有写法 第六节: EF高级属性(二) 之延迟加载、立即加载、显示加载(含导航属性) 第十节: EF的三种追踪

    ASP.NET MVC深入浅出(被替换)   一. 谈情怀-ASP.NET体系 从事.Net开发以来,最先接触的Web开发框架是Asp.Net WebForm,该框架高度封装,为了隐藏Http的无状态 ...

  3. OracleHelper(对增删改查分页查询操作进行了面向对象的封装,对批量增删改操作的事务封装)

    公司的一个新项目使用ASP.NET MVC开发,经理让我写个OracleHelper,我从网上找了一个比较全的OracleHelper类,缺点是查询的时候返回DataSet,数据增删改要写很多代码(当 ...

  4. .NET下对Web.config与App.Config的增删改操作的代码

    把代码过程常用的内容做个收藏,下边代码段是关于 .NET下对Web.config与App.Config的增删改操作的代码. <?xml version="1.0" encod ...

  5. Linq to SQL 简单的增删改操作

    Linq to SQL 简单的增删改操作. 新建数据库表tbGuestBook.结构如下: 新建web项目,完成相应的dbml文件.留言页面布局如下 <body> <form id= ...

  6. C# winform窗体设计-对数据库执行增删改操作

    对于学习数据库的人来说,数据库的增删改可谓是最基本的了(小编其实也只是一个小白=-=),这篇文章,小编将于大家讲解数据库增删改操作 在执行数据库增删改的时候主要使用的:Command 类       ...

  7. Jquery easyui开启行编辑模式增删改操作

    Jquery easyui开启行编辑模式增删改操作 Jquery easyui开启行编辑模式增删改操作先上图 Html代码: <table id="dd"> </ ...

  8. [转]Jquery easyui开启行编辑模式增删改操作

    本文转自:http://www.cnblogs.com/nyzhai/archive/2013/05/14/3077152.html Jquery easyui开启行编辑模式增删改操作先上图 Html ...

  9. [ruby on rails] 跟我学之(3)基于rails console的查增删改操作

    本章节展开对model的介绍:包括查增删改操作.紧接着上面一节<[ruby on rails] 跟我学之HelloWorld> 创建模型 使用命令创建模型 创建表post,默认自带两栏位 ...

随机推荐

  1. Eclipse利用Maven2搭建SpringMVC框架的Web工程

    一.准备工作: 下载apache-maven--> 配置Maven_home -->下载Eclipse Maven插件 二.新建工程:   选择新建Maven Project  arche ...

  2. javascript代码片段

    DOMReady函数,只要DOM结构加载完成即可,不必等待所有资源加载完成,节约时间,"DOMContentLoaded"在H5中被标准化 var DOMReady=functio ...

  3. 安装rpm包时遇到Header V3 DSA signature: NOKEY时解决办法

    安装rpm包,特别是没有GPGkey校验,原因是rpm版本过低导致的. 代码如下: warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY ...

  4. [cross domain] four approachs to cross domain in javascript

    four approachs can cross domain in javascript 1.jsonp 2.document.domain(only in frame and they have ...

  5. 1025关于explain的补充1

    https://segmentfault.com/q/1010000004195469 我的困惑 http://www.cnblogs.com/BeginMan/p/3754322.html 可以指定 ...

  6. extjs store的操作

    先来个声明,看着不错,贴过来的,没都测试过. Store.getCount()返回的是store中的所有数据记录,然后使用for循环遍历整个store,从而得到每条记录. 除了使用getCount() ...

  7. Activity has leaked window that was originally added -界面退出时未关闭对话框异常 android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running? -

    退出Activity时弹出登录框,点击确定finish当前Activity,结果报了这个错,随后查找资料知道 原因: 是因为退出Activity时没有关闭弹出框,出现了这个错误 解决方法: 只需要在a ...

  8. iOS开发小技巧--iOS中设置applicationIconBadgeNumber遇到的问题

    iOS中设置applicationIconBadgeNumber 在iOS7中直接设置applicationIconBadgeNumber没有问题,但是在iOS8之后设置applicationIcon ...

  9. poi-处理excel的单元格日期数据

    poi处理excel时,当excel没有明确指明是哪个类型的数据时,poi很可能处理单元格的日期数据时就有可能是一串数字.而使用java程序基本无法转换 以下为对poi处理日期情况一些方面的处理(不是 ...

  10. Selenium+WebDriver+Python 定时控制任务

    为了更对得起"自动化测试"的名号,我们可以设置定时任务,使我们自动化脚本在某个时间点自动运行脚本,这样就可以让测试在夜间进行,减少了时间成本.通过程序来控制test case在什么 ...