C#读取配置文件是如何实现的呢?本文就C#读取配置文件方面向你介绍相关内容。希望本文能对大家有所帮助。
AD:
C#读取配置文件是如何实现的呢?在.Net中提供了配置文件,让我们可以很方面的处理配置信息,这个配置是XML格式的。而且.Net中已经提供了一些访问这个文件的功能。
C#读取配置文件1、读取配置信息
下面是一个配置文件的具体内容:
- <add span=""><span class="string" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; color: blue; background-color: inherit; ">"coal"</span><span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; color: black; background-color: inherit; ">value=</span><span class="string" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; color: blue; background-color: inherit; ">"一二三"</span><span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; color: black; background-color: inherit; ">/> </span></add>
- <add span=""><span class="string" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; color: blue; background-color: inherit; ">"inWellTime"</span><span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; color: black; background-color: inherit; ">value=</span><span class="string" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; color: blue; background-color: inherit; ">"5"</span><span style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; color: black; background-color: inherit; ">/></span></add>
.Net提供了可以直接访问(注意大小写)元素的方法,在这元素中有很多的子元素,这些子元素名称都是“add”,有两个属性分别是“key”和“value”。一般情况下我们可以将自己的配置信息写在这个区域中,通过下面的方式进行访问:
- StringConString=System.Configuration.ConfigurationSettings.AppSettings["inWellTime"];
在AppSettings后面的是子元素的key属性的值,例如AppSettings["inWellTime"],我们就是访问这个子元素,它的返回值就是“5”,即value属性的值。
C#读取配置文件2、设置配置信息
如果配置信息是静态的,我们可以手工配置,要注意格式。如果配置信息是动态的,就需要我们写程序来实现。在.Net中没有写配置文件的功能,我们可以使用操作XML文件的方式来操作配置文件。
写了个WinForm中读写配置文件App.config的类
C#读取配置文件代码如下:
- usingSystem;
- usingSystem.Configuration;
- usingSystem.Xml;
- usingSystem.Data;
- namespacecn.zhm.common
- {
- ///
- ///ConfigClass的摘要说明。
- ///
- publicclassConfigClass
- {
- publicstringstrFileName;
- publicstringconfigName;
- publicstringconfigValue;
- publicConfigClass()
- {
- //
- //TODO:在此处添加构造函数逻辑
- //
- }
- publicstringReadConfig(stringconfigKey)
- {
- configValue="";
- configValue=ConfigurationSettings.AppSettings[""+configKey+""];
- returnconfigValue;
- }
- //得到程序的config文件的名称以及其所在的全路径
- publicvoidSetConfigName(stringstrConfigName)
- {
- configName=strConfigName;
- //获得配置文件的全路径
- GetFullPath();
- }
- publicvoidGetFullPath()
- {
- //获得配置文件的全路径
- strFileName=AppDomain.CurrentDomain.BaseDirectory.ToString()+configName;
- }
- publicvoidSaveConfig(stringconfigKey,stringconfigValue)
- {
- XmlDocumentdoc=newXmlDocument();
- doc.Load(strFileName);
- //找出名称为“add”的所有元素
- XmlNodeListnodes=doc.GetElementsByTagName("add");
- for(inti=0;i{
- //获得将当前元素的key属性
- XmlAttributeatt=nodes[i].Attributes["key"];
- //根据元素的第一个属性来判断当前的元素是不是目标元素
- if(att.Value==""+configKey+"")
- {
- //对目标元素中的第二个属性赋值
- att=nodes[i].Attributes["value"];
- att.Value=configValue;
- break;
- }
- }
- //保存上面的修改
- doc.Save(strFileName);
- }
- }
- }
C#读取配置文件应用如下:
C#读取配置文件之读取:
- ConfigClassconfig=newConfigClass();
- stringcoal=config.ReadConfig("coal");
- this.tbOpenFile.Text=config.ReadConfig("inWellTime");
C#读取配置文件之写:
- ConfigClassconfig=newConfigClass();
- //得到程序的config名:DataOperate.exe.config;
- config.SetConfigName("DataOperate.exe.config");
- config.SaveConfig("coal","三二一");
- config.SaveConfig("inWellTime","10");
注意:当修改完App.config。文件后,程序中用到的App.config文件的“key”对应的“value”值需要重读,否则修改后修改并不能立即起作用,而要等下次程序重启后才可以读取到修改后的App.config属性值。
C#读取配置文件的相关内容就向你介绍到这里,希望对你学习C#读取配置文件有所帮助。