简单的XML的读取修改
发布时间:2020-12-15 23:40:34 所属栏目:百科 来源:网络整理
导读:假如一个xml文件如下: ?xml version="1.0" encoding="utf-8"?!-- 注意: 除了手动编辑此文件以外,您还可以使用 Web 管理工具来 配置应用程序的设置。可以使用 Visual Studio 中的“网站”-“ASP.NET 配置” 选项。 设置和注释的完整列表在 machine.config.c
假如一个xml文件如下: <?xml version="1.0" encoding="utf-8"?> <!-- 注意: 除了手动编辑此文件以外,您还可以使用 Web 管理工具来 配置应用程序的设置。可以使用 Visual Studio 中的“网站”->“ASP.NET 配置” 选项。 设置和注释的完整列表在 machine.config.comments 中,该文件通常位于 WindowsMicrosoft.NETFrameworkv2.0.xxxxxConfig 中 --> <configuration> <appSettings> <add key="StartupFileWatch" value="True" /> <add key="MaxSize" value="2097152" /> <add key="MinSize" value="10" /> <add key="WatchDir" value="UpLoadFolder" /> <add key="IgnorePostfix" value=".html;.htm;.js" /> <add key="CsCommand" value="1" /> <add key="PeCommand" value="1" /> </appSettings> </configuration> /// <summary> /// 是否启动实时监控 /// </summary> static public bool StartupFileWatch { get { string str = XML.GetConfig("StartupFileWatch",@"ConfigTopWinCMS.FileWatcher.config"); return Convert.ToBoolean(str); } set { XML.SaveSetting("StartupFileWatch",value.ToString(),@"ConfigTopWinCMS.FileWatcher.config"); } } /// <summary> /// 读取 XML中指定节点值 /// </summary> /// <param name="strKeyName"></param> /// <returns></returns> public static string GetConfig(string strKeyName) { return GetConfig(strKeyName,"Web.config"); } /// <summary> /// 读取 XML中指定节点值 /// </summary> /// <param name="strKeyName">节点键名</param> /// <returns>指定节点键值</returns> public static string GetConfig(string strKeyName,string strWhich) { string configpath; try { configpath = string.Concat(System.Web.HttpRuntime.AppDomainAppPath,@"",strWhich); } catch { configpath = System.Windows.Forms.Application.StartupPath; if (configpath.EndsWith(@"bin")) { configpath = configpath.Substring(0,configpath.Length - 4); } configpath = string.Concat(configpath,strWhich); } using (XmlTextReader tr = new XmlTextReader(configpath)) { while (tr.Read()) { if (tr.NodeType == XmlNodeType.Element) { if (tr.Name == "add" && tr.GetAttribute("key") == strKeyName) { return tr.GetAttribute("value"); } } } } return null; } /// <summary> /// 保存Web.config /// </summary> /// <param name="strKeyName">节点名</param> /// <param name="strKeyValue">要保存的值</param> /// <param name="strWhich">哪个配置文件</param> public static void SaveSetting(string strKeyName,string strKeyValue,string strWhich) { //创建XML文档实例 System.Xml.XmlDocument XMLWebSetting = new System.Xml.XmlDocument(); //打开XML文档 XMLWebSetting.Load(System.Web.HttpRuntime.AppDomainAppPath + "/" + strWhich); //查找节点所在位置 System.Xml.XmlNodeList XmlNodeList = XMLWebSetting.SelectSingleNode("//appSettings").ChildNodes; foreach (System.Xml.XmlNode xn in XmlNodeList) { if (xn.Attributes["key"].InnerText == strKeyName) { xn.Attributes["value"].InnerText = strKeyValue; XMLWebSetting.Save(System.Web.HttpContext.Current.Server.MapPath("~/" + strWhich + "")); break; } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- c – 类初始化与构造函数初始化列表的顺序
- 正则表达式总结
- cocos2d-x初探学习笔记(15)--CCOrbitCamera
- 闪客工具: 为你的flash firework photoshop做插
- c# – Windows Store App的Monospace字体
- c# – Asp.net Web API属性路由404错误
- c – 如何将完整的字符串写入文件?
- ruby-on-rails – sidekiq中的ActiveRecord :: B
- AJAX - $.get( url, [data], [success], [type]
- reactjs – React Native – CSS:没有边框的las
热点阅读