ICANN认证国际域名顶级注册机构
网站建设,域名注册,空间租用,软件销售,广告设计 域名注册,空间租用, 网站建设,东莞网页设计,域名注册,网站推广,网站开发,网页设计 网站推广,,百度推广,新浪推广,雅虎推广,网易推广 标志设计,画册设计,包装设计,VI策划,企业形象顾问 连邦软件加盟店,提供销遥行,管家婆,速达,用友ERP,诺顿等软件报价及销售 建站必读 腾达网络,上网帮助中心, 腾达为东莞等地,提供网站建设,网站推广,广告设计,软件销售等优质服务!
建站必读


 
 
当前位置:首页 -> 建站必读 -> .NET技术
使用.NET读取XML文件
介绍



本文中我将介绍在ASP.NET应用程序中如何读取XML文件,这是一个十分有用的技巧。使用这个技巧,我们能够定制我们的应用程序的配置文件,也可以读取那些保存在XML文件中的数据。



概论



下面的代码将使用XmlTextReader对象将磁盘文件中的数据读取到XmlDocument对象中。XmlTextReader对象在功能上和StreamReader及BinaryReader对象十分相似,只不过它是专为读取XML文件而特别设计的。除此以外,XmlTextReader对象还有其他一些与XMl相关的特性。例如,代码中使用到的WhitespaceHandling属性告诉应用程序不要为XML文件中多余的空格建立节点。



下面的代码使用XmlTextReader对象的DocumentElement属性来查找XML文档的树状表达形式的根节点。之后,递归地调用AddWithChildren方法将将节点及它的子节点一同添加到listbox中。



下面的代码还包含了属性的处理。属性节点并不包含在一个XmlDocument对象的节点的子节点集合中。因而,你只能使用XmlNode对象的Attributes属性获得属性节点集合。获取了属性节点集合后,代码使用XmlNamedNodeMap对象来保存这个集合。这个对象能够保存任何类型的XmlNode对象的任何集合。



代码列表



private void btnLoad_Click(object sender, System.EventArgs e)



{



XmlTextReader reader = new XmlTextReader(



Server.MapPath("mycompany.xml"));







reader.WhitespaceHandling = WhitespaceHandling.None;



XmlDocument xmlDoc = new XmlDocument();



//将文件加载到XmlDocument对象中



xmlDoc.Load(reader);



//关闭连接



reader.Close();



//向listbox中添加代表文档的元素



lbNodes.Items.Add("XML Document");



//查找根节点,并将它及它的子节点一同添加到listbox中



XmlNode xnod = xmlDoc.DocumentElement;



AddWithChildren(xnod,1);



}







private void AddWithChildren(XmlNode xnod, Int32 intLevel)



{



//将节点及它的子节点一同添加到listbox中



//intLevel 控制缩进的深度



XmlNode xnodWorking;



String strIndent = new string(,2 * intLevel);



//如果节点有值,读取它的值



string strValue = (string) xnod.Value;



if(strValue != null)



{



strValue = " : " + strValue;



}



//将节点的详细信息添加到ListBox中



lbNodes.Items.Add(strIndent + xnod.Name + strValue);



//如果是元素节点,获取它的属性



if (xnod.NodeType == XmlNodeType.Element)



{



XmlNamedNodeMap mapAttributes = xnod.Attributes;



//将节点属性添加到ListBox中



foreach(XmlNode xnodAttribute in mapAttributes)



{



lbNodes.Items.Add(strIndent + " " + xnodAttribute.Name +



" : " + xnodAttribute.Value);



}



//如果还有子节点,就递归地调用这个程序



if(xnod.HasChildNodes)



{



xnodWorking = xnod.FirstChild;



while (xnodWorking != null)



{



AddWithChildren(xnodWorking, intLevel +1);



xnodWorking = xnodWorking.NextSibling;



}



}



}



}



}




 
 
本站关键词:
|东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计||东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计||东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计||东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计||东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计||东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计||东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计||东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计||东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计||东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计||东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计||东莞网站推广|东莞国内域名注册|做网站|设计网站|东莞虚拟主机|东莞asp空间|东莞主机托管|东莞画册设计|东莞包装设计|东莞产品目录设计|东莞产品推广策划|东莞VI设计|
域名注册 | 虚拟主机 | 网站建设 | 网站推广 | 广告设计 | 帮助中心 | 软件中心 | 关于腾达
东莞市腾达信息工程有限公司      本站网络实名: 东莞网站建设
地址:东莞市新城市中心区第一国际B座610   邮编:523007
电话:0769-22026071 22026072 传真:0769-22026076 24小时服务热线:13712032014
© 2002~2005 腾达网络   版权所有