asp.net操作xml数据常用方法小结
2007-06-08 13:37
666 查看
1得到关于某元素下的所有值
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath(".\\db\\dbGuest.xml"));
XmlNodeList xnl = doc.GetElementsByTagName("Name");//得到关于是name元素下的所有值
xnl是一个数组,如果帮顶到数据控件上,用xnl[i].InnerXml.
2查询任意节点的值(selectsiglenode方法)
XmlDocument doc = new XmlDocument();
doc.SelectSingleNode("//User[Name='"+this.ddlName.SelectedItem.Text+"']").ChildNodes.Item(i).InnerText;
3选择一个节点
XmlNode xNode = doc.SelectSingleNode("dbGuest");
再把这句话变一下效果则为选择一个数组
XmlNodeList xnl = doc.SelectSingleNode("dbGuest").ChildNodes;
4创建一个元素,并在其下面添加一个元素,赋值
XmlElement xe1 =doc.CreateElement("User");
XmlElement sub1 = doc.CreateElement("Name");
sub1.InnerText = "junyistar";
xe1.AppendChild(sub1);
5编历指定一个节点下的所有子节点,并找出子节点下的固定的值(相当于表套表)
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath(".\\db\\dbGuest.xml"));
XmlNodeList nodeList=xmlDoc.SelectSingleNode("dbGuest").ChildNodes;//获取dbGuest节点的所有子节点
foreach(XmlNode xn in nodeList)//遍历所有子节点
{
XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型
XmlNodeList node = xe.GetElementsByTagName("Name");
if(node.Count>0)
{
if(node[0].InnerText==ddlName.SelectedItem.Text)
{
XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点
foreach(XmlNode xn1 in nls)//遍历
{
XmlElement xe2=(XmlElement)xn1;//转换类型
if(xe2.Name=="Email")//如果找到
{
xe2.InnerText=tbNewMail.Text;//则修改
break;//找到退出来就可以了
}
}
break;
}
}
6前面所有方法最后别忘用doc.save()
xmlDoc.Save(Server.MapPath(".\\db\\dbGuest.xml"));
个人感觉用xmldocument操纵xml还是比较烦琐,可能的话还是吧xml读到dataset中,
应为xml其实就是一个数据表,读取特定数据时只需用ds.tables["tableName"].Rows[i][j]即可。
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath(".\\db\\dbGuest.xml"));
XmlNodeList xnl = doc.GetElementsByTagName("Name");//得到关于是name元素下的所有值
xnl是一个数组,如果帮顶到数据控件上,用xnl[i].InnerXml.
2查询任意节点的值(selectsiglenode方法)
XmlDocument doc = new XmlDocument();
doc.SelectSingleNode("//User[Name='"+this.ddlName.SelectedItem.Text+"']").ChildNodes.Item(i).InnerText;
3选择一个节点
XmlNode xNode = doc.SelectSingleNode("dbGuest");
再把这句话变一下效果则为选择一个数组
XmlNodeList xnl = doc.SelectSingleNode("dbGuest").ChildNodes;
4创建一个元素,并在其下面添加一个元素,赋值
XmlElement xe1 =doc.CreateElement("User");
XmlElement sub1 = doc.CreateElement("Name");
sub1.InnerText = "junyistar";
xe1.AppendChild(sub1);
5编历指定一个节点下的所有子节点,并找出子节点下的固定的值(相当于表套表)
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath(".\\db\\dbGuest.xml"));
XmlNodeList nodeList=xmlDoc.SelectSingleNode("dbGuest").ChildNodes;//获取dbGuest节点的所有子节点
foreach(XmlNode xn in nodeList)//遍历所有子节点
{
XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型
XmlNodeList node = xe.GetElementsByTagName("Name");
if(node.Count>0)
{
if(node[0].InnerText==ddlName.SelectedItem.Text)
{
XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点
foreach(XmlNode xn1 in nls)//遍历
{
XmlElement xe2=(XmlElement)xn1;//转换类型
if(xe2.Name=="Email")//如果找到
{
xe2.InnerText=tbNewMail.Text;//则修改
break;//找到退出来就可以了
}
}
break;
}
}
6前面所有方法最后别忘用doc.save()
xmlDoc.Save(Server.MapPath(".\\db\\dbGuest.xml"));
个人感觉用xmldocument操纵xml还是比较烦琐,可能的话还是吧xml读到dataset中,
应为xml其实就是一个数据表,读取特定数据时只需用ds.tables["tableName"].Rows[i][j]即可。
相关文章推荐
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(10):服务器端和客户端数据类型的自动转换:以XML方式序列化数据、小结
- ASP.NET MVC WebApi 返回数据类型序列化控制(json,xml) 用javascript在客户端删除某一个cookie键值对 input点击链接另一个页面,各种操作。 C# 往线程里传参数的方法总结 TCP/IP 协议 用C#+Selenium+ChromeDriver 生成我的咕咚跑步路线地图 (转)值得学习百度开源70+项目
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(10):服务器端和客户端数据类型的自动转换:以XML方式序列化数据、小结
- ASP操作XML数据小结
- ASP.net中保存用户数据的方法小结
- 使用ASP.NET页面创建可视的UI,在客户机上实例化MSXML分析器的页面从中间层组件取出XML数据、操作并显示 并有问题请高手解决
- ASP.NET中的文件操作常用方法
- ASP.NET从数据库中取出数据添加到xml中方法
- asp.net Xml绑定到数据控件的两种简单方法
- Asp.net操作Excel常用方法及属性
- ASP操作XML数据小结
- ASP.NET读取XML文件中常用的四种方法知识讲解
- ASP.NET 页面间数据传递方法小结
- ASP操作XML数据小结
- asp.net操作xml小结
- ASP.NET实练第一练[学习.NET常用控件与XML数据的处理]
- asp.net 操作XML 按指定格式写入XML数据 WriteXml
- asp.net常用操作类之c# xml操作基类cs
- ASP.NET环境下XML导出导入数据方法