asp.net写入读取xml的方法
添加命名空间
using System.Xml;
我自己的代码(添加其中的节点)
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("userTable.xml"));
XmlNode root = xmlDoc.SelectSingleNode("root");//查找<root>
XmlElement xe1 = xmlDoc.CreateElement("user");//创建一个<user>节点
//xe1.SetAttribute("genre", "张三");//设置该节点genre属性
//xe1.SetAttribute("ISBN", "1-1111-1");//设置该节点ISBN属性
XmlElement xesub1 = xmlDoc.CreateElement("ID");
xesub1.InnerText = "" + guid + "";//设置文本节点
xe1.AppendChild(xesub1);//添加到<user>节点中
XmlElement xesub2 = xmlDoc.CreateElement("yhmc");
xesub2.InnerText = "" + username + "";
xe1.AppendChild(xesub2);
XmlElement xesub3 = xmlDoc.CreateElement("tableRealationName");
xesub3.InnerText = "" + tableRealation_name + "";
xe1.AppendChild(xesub3);
//XmlElement xesub4 = xmlDoc.CreateElement("imgDescribName");
//xesub4.InnerText = "" + imgDescrib_name + "";
//xe1.AppendChild(xesub4);
//XmlElement xesub5 = xmlDoc.CreateElement("imgDescribName");
//xesub5.InnerText = "1450";
//xe1.AppendChild(xesub5);
root.AppendChild(xe1);//添加到<root>节点中
xmlDoc.Save(Server.MapPath("userTable.xml"));
效果
<?xml version="1.0" encoding="UTF-8"?>
<root>
<user genre=“张三 ” ISBN=“1-1111-1”>
<ID>guid</ID>
<yhmc>yhmc</yhmc>
<tableRealationName>tableRealationName</tableRealationName>
</user>
</root>
修改其中节点(属性和子结点)
XmlDocument xmlDoc=new XmlDocument();
xmlDoc.Load( Server.MapPath("userTable.xml") );
XmlNodeList nodeList=xmlDoc.SelectSingleNode("Employees").ChildNodes;//获取Employees节点的所有子节点
foreach(XmlNode xn in nodeList)//遍历所有子节点
{
XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型
if(xe.GetAttribute("genre")=="张三")//如果genre属性值为“张三”
{
xe.SetAttribute("genre","update张三");//则修改该属性为“update张三”
XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点
foreach(XmlNode xn1 in nls)//遍历
{
XmlElement xe2=(XmlElement)xn1;//转换类型
if(xe2.Name=="author")//如果找到
{
xe2.InnerText="ID";//则修改
}
}
}
}
xmlDoc.Save( Server.MapPath("userTable.xml") );//保存。
修改结点(添加结点的属性和添加结点的自结点):
XmlDocument xmlDoc=new XmlDocument();
xmlDoc.Load( Server.MapPath("userTable.xml") );
XmlNodeList nodeList=xmlDoc.SelectSingleNode("Employees").ChildNodes;//获取Employees节点的所有子节点
foreach(XmlNode xn in nodeList)
{
XmlElement xe=(XmlElement)xn;
xe.SetAttribute("test","111111");
XmlElement xesub=xmlDoc.CreateElement("flag");
xesub.InnerText="1";
xe.AppendChild(xesub);
}
xmlDoc.Save( Server.MapPath("userTable.xml") );
读取方法
string path = Server.MapPath("userTable.xml");
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(path);
//获取制定子节点
XmlNode xn = xmldoc.SelectSingleNode("root");
XmlNodeList xnlist = xn.ChildNodes;
foreach (XmlNode xn1 in xnlist)
{
XmlElement xe = (XmlElement)xn1;
XmlNodeList xnl0 = xe.ChildNodes;
string xmlynbh = xnl0.Item(0).InnerText;
if (xmlynbh == yhbh.ToString())
{
tableRealationName = xnl0.Item(2).InnerText;
//imgDescribName = xnl0.Item(3).InnerText;
}
asp.net写入读取xml的方法的更多相关文章
- Asp.Net写入读取Xml(处理文件权限)
1,网上关于读取写入Xml的博客比较多,参考了发现提到Xml文件权限的博客比较少.因为在开发中我发现,如果文件存于一些没有权限的路径,代码是访问不到该文件,页面会报错提示403,Forbidden.意 ...
- Android中写入读取XML
获取XML文件的基本思路是,通过getResources().getXml()获的XML原始文件,得到XmlResourceParser对象,通过该对象来判断是文档的开头还是结尾,是某个标签的开始还是 ...
- Java获取路径方法&相对路径读取xml文件方法
(1).request.getRealPath("/");//不推荐使用获取工程的根路径 (2).request.getRealPath(request.getRequestURI ...
- javascript读取xml的方法【转载】
jquery读取xml文件 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http ...
- ASP.NET MVC读取XML并使用ViewData显示
看到网上一个网友问及,无法获取XML某一个节点内容.下面Insus.NET在ASP.NET MVC环境下实现它. 先把XML文件放入App_Data目录,当然你可以放在自建目录中.打开看看它有几层,几 ...
- ASP .NET CORE 读取配置文件的方法
老式的config文件在ASP.net core2.0中变成了appsettings.json,如果想要读取自定义配置,可以写如下代码 { "Logging": { "I ...
- sqlserver 读取xml 字符串方法
declare @xml xml declare @propertyName varchar(50) declare @str nvarchar(max) set @propertyName = ...
- PHP读取xml方法讲解
一,什么是xml,xml有什么用途 XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Marku ...
- PHP读取xml方法介绍
一,什么是xml,xml有什么用途 XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Marku ...
随机推荐
- poj 1144 (Tarjan求割点数量)
题目链接:http://poj.org/problem?id=1144 描述 一个电话线公司(简称TLC)正在建立一个新的电话线缆网络.他们连接了若干个地点分别从1到N编号.没有两个地点有相同的号码. ...
- 【洛谷P1052】过河 离散化+dp
题目大意:给定一个长度为 N 的序列,有 M 个点对答案的贡献为 1,其余为 0,现从起点出发,每次只能走 [s,t] 个单位,求从起点走到终点时答案贡献最小是多少. 题解:由于 N 很大,无法直接记 ...
- NLog类库使用探索——编程配置
以编程的方式配置,这是我项目中的,我都不知道为什么使用编程.直接配置不很好吗,估计他也没有研究.直接上步骤和代码: 创建一个LoggingConfiguration对象,用来保存配置信息 至少创建一个 ...
- 第九篇-新建文件夹和文本文件mkdirs,createNewFile
一.新建一个empty activity的项目 二.修改AndroidMainfest.xml,添加用户权限. <?xml version="1.0" encoding=&q ...
- ECharts使用心得总结
https://blog.csdn.net/whiteosk/article/details/52684053 项目中的图表形式很多,基本可以在ECharts中找到相应实例,但UI设计图中的图表跟百度 ...
- Spring MVC 架构的java web工程如何添加登录过滤器
发布到外网的web工程必须添加登录过滤器来阻挡一些非法的请求,即只有登录的用户才能对web工程进行请求,否则无论请求什么资源都需要调整到登录页面进行登录操作.这时就需要用到过滤器,其实非常简单,只需要 ...
- Linux系统调用之内存管理
brk 改变数据段空间的分配 sbrk 参见brk mlock 内存页面加锁 munlock 内存页面解锁 mlockall 调用进程所有内存页面加锁 munlockall 调用进程所有内存页面解锁 ...
- 3.git 分支操作
1.git branch 查看分支 git branch -a 查看远程仓库分支 结果显示,只有一个master分支,项目刚开始默认只有一个分支,名字叫做master,一般都不会直接在master上 ...
- Luogu P4197 Peaks
题目链接 \(Click\) \(Here\) 做法:\(Kruskal\)重构树上跑主席树 构造方法:把每条边拆出来成一个点,点权是原先的边权.每次连边的时候,连的不再是点,而是其原先点所在的联通块 ...
- Luogu P3239 [HNOI2015]亚瑟王
题目链接 \(Click\) \(Here\) 期望神题.最开始一直尝试推朴素一点的,逻辑上的\(DP\)式子,后来发现一直出锅,可能是我的式子没容斥对... 题解中给出的想法是这样的: 首先,如果直 ...