【C#】【WPF】如何读写app.config文件
WPF生成的项目中会有.exe.config。一般是系统默认配置的
格式是xml格式,C#的项目可以直接读写这些文件。方法代码如下。
public static string GetConnectionStringsConfig(string connectionName)
{
string file = System.Windows.Forms.Application.ExecutablePath;
System.Configuration.Configuration sysconfig = ConfigurationManager.OpenExeConfiguration(file);
string connectionString =
sysconfig.ConnectionStrings.ConnectionStrings[connectionName].ConnectionString.ToString();
return connectionString;
}
public static void UpdateConnectionStringsConfig(string newName, string newConString)
{
string file = System.Windows.Forms.Application.ExecutablePath;
Configuration sysconfig = ConfigurationManager.OpenExeConfiguration(file);
bool exist = false;
if (sysconfig.ConnectionStrings.ConnectionStrings[newName] != null)
{
exist = true;
}
if (exist)
{
sysconfig.ConnectionStrings.ConnectionStrings.Remove(newName);
}
ConnectionStringSettings mySettings =
new ConnectionStringSettings(newName, newConString);
sysconfig.ConnectionStrings.ConnectionStrings.Add(mySettings);
sysconfig.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection("ConnectionStrings");
}
以上方法可以直接向配置文件中动态写入。
还有一种方法是使用Key值的config读写
app.config的配置文件如下
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="Language" value="Chinese" />
<add key="DefaultConfigPath" value="" />
<add key="DBFilePath" value="" />
</appSettings>
</configuration>
读配置文件的方法很简单,代码如下
language = ConfigurationManager.AppSettings[Options.Language];
defaultConfigPath = ConfigurationManager.AppSettings[Options.DefaultConfigPath];
dbFilePath = ConfigurationManager.AppSettings[Options.DBFilePath];
写入配置文件的方法也很简单,方法如下
public static void WriteOptions(string keyName, string newValue)
{
Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
cfa.AppSettings.Settings[keyName].Value = newValue;
cfa.Save();
}
调用方法完成写入指定Key值的配置文件。
这种方法仅仅在配置文件中存在指定Key值的时候可以写入Value的值。也就是修改指定Key的对应Value的值。
当然对应还有删除和添加的方法如下
public static void WriteOptions(string keyName, string newValue)
{
Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
//删除
cfa.AppSettings.Settings.Remove(KeyName);
//添加
cfa.AppSettings.Settings.Add(KeyName,newValue);
cfa.Save();
}
【C#】【WPF】如何读写app.config文件的更多相关文章
- WPF程序中App.Config文件的读与写
WPF程序中的App.Config文件是我们应用程序中经常使用的一种配置文件,System.Configuration.dll文件中提供了大量的读写的配置,所以它是一种高效的程序配置方式,那么今天我就 ...
- 关于读写APP.config文件能读却写不了的问题
今天要求用winform写一个窗口用来读写一个App.config,要对 <appSettings>里面的add key和value进行添加和修改.要实现的效果图如下: -------- ...
- Winform读写App.config文件以及重启程序
//重启主程序 //System.Diagnostics.Process.Start(System.Reflection.Assembly.GetExecutingAssembly().Locatio ...
- WPF C#之读取并修改App.config文件
原文:WPF C#之读取并修改App.config文件 简单介绍App.config App.config文件一般是存放数据库连接字符串的. 下面来简单介绍一下App.config文件的修改和更新. ...
- WPF应用App.Config文件的保存路径
App.Config文件有更改后,自动会保存到以下路径: C:\Users\你的系统用户名\AppData\Local\你的应用名\
- C# 读写App.config配置文件的方法
我们经常会希望在程序中写入一些配置信息,例如版本号,以及数据库的连接字符串等.你可能知道在WinForm应用程序中可以利用Properties.Settings来进行类似的工作,但这些其实都利用了Ap ...
- C# 读写App.config
Jul142013 [C#] 读写App.config配置文件的方法 作者:xieyc 发布:2013-07-14 17:29 字符数:3433 分类:编程 阅读: 39,139 次 ...
- C#中动态读写App.config配置文件
转自:http://blog.csdn.net/taoyinzhou/article/details/1906996 app.config 修改后,如果使用cofnigurationManager立即 ...
- C#项目实例中读取并修改App.config文件
C#项目是指一系列独特的.复杂的并相互关联的活动,这些活动有着一个明确的目标或目的,必须在特定的时间.预算.资源限定内,依据规范完成.项目参数包括项目范围.质量.成本.时间.资源. 1. 向C#项目实 ...
随机推荐
- MySQL数据库定时自动备份脚本
Web系统,最重要的事项就是数据库的安全性和完整性. 定时做好备份,非常重要,千万不要在这个问题上偷懒.如果你的重要数据丢失了,会让你欲哭无泪. 导出表结构和数据 mysqldump -uroot ...
- URIEncoding
http://thoughtfly.iteye.com/blog/1533481 http://docs.spring.io/spring/docs/current/spring-framework- ...
- [Compose] 12. Two rules about Funtors
We learn the formal definition of a functor and look at the laws they obey. Any Functor should follo ...
- ios开发抽屉效果的封装使用
#import "DragerViewController.h" #define screenW [UIScreen mainScreen].bounds.size.width @ ...
- [React] Modify file structure
In React app, you might create lots of components. We can use index.js to do both 'import' & 'ex ...
- Nginx与真实IP
配置了Nginx,Tomcat中的Web程序,获得的ip一直是"127.0.0.1",比较纳闷.获得远程ip,已经判断了很多情况,为什么会这样呢? 正解 proxy_set_hea ...
- 写bug-free 的code
一个算法题目 写的没有bug,是件不easy的事情 必需要考虑全面,事实上就是你算法过程中,每一个变量是否适用,你的算法是在什么样的前提以下展开的 这个和參数检查是另外一件事情.參数检查被说的好像是一 ...
- 孔雀翎----《Programming C# 》中国版 文章4版
孔雀翎----<Programming C# >中国版 文章4版 页:http://blog.csdn.net/21aspnet/ 时间:2007.8.7 电子工业出版 ...
- 判断navigation中父控制器类型
for (UIViewController *controller in self.navigationController.viewControllers) { if ([controller is ...
- Android Studio打包apk,aar,jar包
转载请标明出处:一片枫叶的专栏 文本我们将讲解android studio打包apk,aar,jar包的相关知识.apk包就是android系统的安装包,这里没什么好说的,aar包是android中独 ...