c#读取.config文件内容
今天在做项目的时候,由于程序同时启动多种情况的数据,测试分为多个人,就需要把数据分离开来,于是用了一个临时的配置文件,让测试在配置文件修改相应数据从而让各个测试互相不影响!
步骤:
第一步:添加一个App.config文件,文件格式如下:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="canshu" value="HKG999$sha777!1002*1003#sha888!0001*0002"/>
</appSettings>
</configuration>
这是我测试时候使用的一个例子!
第二歩:将文件添加在了项目中。
最开始我使用的是这种方法来读取:
string ceshi =ConfigurationManager.AppSettings["canshu"];
注意:需要在资源管理器的引用里面,添加System.Configuration,然后再在代码中添加 using System.Configuration;
现在问题来了,如果你的这个App.config的配置文件没有在你的启动项的目录下面,这样就拿不到你想要的数据,返回一个null。
解决办法:(获取绝对路径下面的配置文件数据)
下面这种方法使用性比较好一些:
ExeConfigurationFileMap map = new ExeConfigurationFileMap();
map.ExeConfigFilename =AppDomain.CurrentDomain.SetupInformation.ApplicationBase.TrimEnd('\\') + "\\App.config"; ////(引号里面的是你的配置文件的在程序的绝对路径)。
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(map, ConfigurationUserLevel.None);
string ceshi = config.AppSettings.Settings["canshu"].Value;
这样的方式就获取到了想要的数据!希望遇到同样问题的跟我一样的初学者能得到帮助!