winform程序读取和改写配置文件App.config元素的值
在开发Web项目的时候,会有一个配置文件Web.config,用来存放一些全局的变量,如连接数据库用的字符串。相应的,在开发winform程序时,也有一个配置文件,它就是App.config,这个文件的作用与Web.config大致相同,也可以用来存放程序所用的全局变量及Value值。
来看一个app.config文件的例子:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<!--图片存放路径-->
<add key="ImgPath" value="D:\img\" />
</appSettings>
</configuration>
可以看出,app.config和web.config一样,嗯,它也是一个XML文件。那怎么对这个文件中的元素进行读取操作呢?很简单,来看代码:
string strPath = System.Configuration.ConfigurationSettings.AppSettings["ImgPath"].ToString();
这样就可以把app.config文件中ImgPath这个元素的Value值读取出来了。那怎么改写元素的值呢?如果你认为像读那样的去写,像这样的代码:
System.Configuration.ConfigurationSettings.AppSettings["ImgPath"] = @"E:\img\"; //这样写是没用的
在对app.config文件的元素Value值进行修改操作时,只能把app.config文件当作一个普通的XML文件来对待,利用System.Xml.XmlDocument类把这个app.config文件读到内存中,并通过System.Xml.XmlNode类找到appSettings节点,通过System.Xml.XmlElement类找到节点下的某个元素,利用SetAttribute方法来修改这个元素的值后,最后再将app.config文件保存到原的目录中,这样,才算完成了对一个元素Value值的修改操作。下面这个方法可完成对app.config文件appSettings节点下任意一个元素进行修改,当然,你也可能修改这个方法,达到修改任意节点,任意元素的Value值。
public static void SetValue(string AppKey, string AppValue)
{
System.Xml.XmlDocument xDoc = new System.Xml.XmlDocument();
xDoc.Load(System.Windows.Forms.Application.ExecutablePath + ".config");
System.Xml.XmlNode xNode;
System.Xml.XmlElement xElem1;
System.Xml.XmlElement xElem2;
xNode = xDoc.SelectSingleNode("//appSettings");
xElem1 = (System.Xml.XmlElement)xNode.SelectSingleNode("//add[@key='" + AppKey + "']");
if (xElem1 != null) xElem1.SetAttribute("value", AppValue);
else
{
xElem2 = xDoc.CreateElement("add");
xElem2.SetAttribute("key", AppKey);
xElem2.SetAttribute("value", AppValue);
xNode.AppendChild(xElem2);
}
xDoc.Save(System.Windows.Forms.Application.ExecutablePath + ".config");
}
注意这个方法中if条件else下的语句,当在文件中没有找到给定的元素时,方法会创建这个元素。
winform程序读取和改写配置文件App.config元素的值相关推荐
- 类库如何读取配置文件(app.config)?
我们知道,在WinForm或者是Console应用程序中,我们可以使用app.config文件,做为程序的配置信息的储存.然后我们使用System.Configuration类进行调用,读取或更新等. ...
- 类项目中的配置文件app.config在打包安装后的信息获取的问题
在一个项目中碰到这样的一个问题,做一个WORD插件,功能在类库项目中实现了,配置信息存在类库项目的配置文件app.config中,在进行打包后,获取的配置文件中的DocType节点信息时,使用以下方法 ...
- C#中怎样获取默认配置文件App.config中配置的键值对内容
场景 在新建一个程序后,项目中会有一个默认配置文件App.config 一般会将一些配置文件信息,比如连接数据库的字符串等信息存在此配置文件中. 怎样在代码中获取自己配置的键值对信息. 注: 博客主页 ...
- 一步一步教你玩转.NET Framework的配置文件app.config (转载)
一步一步教你玩转.NET Framework的配置文件app.config 在一般的项目中,为了使你的代码更加灵活,更方便调整,减少不必要的hard code,我们都在config中添加许多配置信息, ...
- C#读取配置文件app.config
应用程序配置文件是标准的 XML 文件,XML 标记和属性是区分大小写的.它是可以按需要更改的,开发人员可以使用配置文件来更改设置,而不必重编译应用程序. 配置文件的根节点是configuration ...
- (原)举例说明C#自定义配置文件app.config及如何读取配置内容(在app.config加入自定义的XML节点)?...
App.config文件如下: <?xml version="1.0" encoding="utf-8" ?> <configuration& ...
- 配置文件app.config
无论对于客户端程序还是web应用程序,配置文件的作用不言而喻,现总结用法如下: 1. 创建配置节类 必须创建继承自ConfigurationSection的对象才能进行配置数据读写操作,Configu ...
- 配置文件App.config 生成和调用的两种方式
方式一: App.config //app.config<?xml version="1.0" encoding="utf-8"?> <con ...
- 使用.NET Framework的配置文件app.config
在一般的项目中,为了使你的代码更加灵活,更方便调整,减少不必要的hard code,我们都在config中添加许多配置信息,一般可以选择.NET自带的配置文件形式app.config或者web项目中的 ...
最新文章
- MySQL Server系统架构
- camera客观测试_光学图像测试之屏幕色彩管理测试
- matlab关于噪声课设,基于matlab的有噪声的语音信号处理的课程设计.doc
- BelgiumTS交通数据集分类-pytorch版
- RequestMapping
- 数据结构:在一个单链表中,若删除p指向节点的后继节点,则执行的操作为:( )
- 一个大龄程序员对大家的总结性忠告(源于VeryCD)
- linux 编辑启动菜单,grub2的配置,linux启动菜单修改
- 华为云 - 公有云产品 - OBS计费说明
- 帆软报表重要Activator之DesignerStartup中的GlobalListenerProvider扩展开发
- 蓝牙版本avrcp怎么选_「科技犬」除了苹果AirPods,真无线蓝牙耳机到底怎么选?...
- spring boot企业合同管理系统 毕业设计源码161456
- 推荐的五款市面上常用的免费CMS建站系统
- 周杰伦的歌里都有些啥?
- 济南市公安局人口数据备份库项目(数据复制)之一
- 通过Vue+flvjs在HTML5中播放flv格式视频文件—demo及api
- 安卓版旅行青蛙三叶草修改教程
- 怎么屏蔽百度搜索时的百度热榜?
- 异常org.mockito.exceptions.verification.TooManyActualInvocations解决方案
- 从汇编角度看一个C函数调用