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文件的更多相关文章

  1. WPF程序中App.Config文件的读与写

    WPF程序中的App.Config文件是我们应用程序中经常使用的一种配置文件,System.Configuration.dll文件中提供了大量的读写的配置,所以它是一种高效的程序配置方式,那么今天我就 ...

  2. 关于读写APP.config文件能读却写不了的问题

    今天要求用winform写一个窗口用来读写一个App.config,要对  <appSettings>里面的add key和value进行添加和修改.要实现的效果图如下: -------- ...

  3. Winform读写App.config文件以及重启程序

    //重启主程序 //System.Diagnostics.Process.Start(System.Reflection.Assembly.GetExecutingAssembly().Locatio ...

  4. WPF C#之读取并修改App.config文件

    原文:WPF C#之读取并修改App.config文件 简单介绍App.config App.config文件一般是存放数据库连接字符串的.  下面来简单介绍一下App.config文件的修改和更新. ...

  5. WPF应用App.Config文件的保存路径

    App.Config文件有更改后,自动会保存到以下路径: C:\Users\你的系统用户名\AppData\Local\你的应用名\

  6. C# 读写App.config配置文件的方法

    我们经常会希望在程序中写入一些配置信息,例如版本号,以及数据库的连接字符串等.你可能知道在WinForm应用程序中可以利用Properties.Settings来进行类似的工作,但这些其实都利用了Ap ...

  7. C# 读写App.config

    Jul142013 [C#] 读写App.config配置文件的方法 作者:xieyc   发布:2013-07-14 17:29   字符数:3433   分类:编程   阅读: 39,139 次 ...

  8. C#中动态读写App.config配置文件

    转自:http://blog.csdn.net/taoyinzhou/article/details/1906996 app.config 修改后,如果使用cofnigurationManager立即 ...

  9. C#项目实例中读取并修改App.config文件

    C#项目是指一系列独特的.复杂的并相互关联的活动,这些活动有着一个明确的目标或目的,必须在特定的时间.预算.资源限定内,依据规范完成.项目参数包括项目范围.质量.成本.时间.资源. 1. 向C#项目实 ...

随机推荐

  1. iOS开发RunnLoop学习二:GCD中的定时器

    #import "ViewController.h" @interface ViewController () /** 注释 */ @property (nonatomic, st ...

  2. IIS服务器能支持10万并发

    服务器能支持10万并发由于一个项目的访问量越来越大,从原来的几百个,增加到现在50多万个每天,所以阿里的服务器也扛不住了,于是就想办法,查了N多资料,总结了以下方法,才解决这问题,每天一共访问量50多 ...

  3. Session or Cookie?是否需要用Tomcat等Web容器的Session

    Cookie是HTTP协议标准下的存储用户信息的工具,浏览器把用户信息存放到本地的文本文件中. Session是基于Cookie实现的. 2011年4月,武汉群硕面试的时候(实习生),面试官也问过这个 ...

  4. [Angular Unit Testing] Shallow Pipe Testing

    import { TestBed, ComponentFixture } from '@angular/core/testing'; import { BrowserDynamicTestingMod ...

  5. Cocos2d-x 3.0final 终结者系列教程05-AppDelegate入口类

    下面是Cocos2d-x的程序入口: class  AppDelegate : private cocos2d::Application { public: AppDelegate(); virtua ...

  6. [WPF]VS2019打包WPF程序

    原文:[WPF]VS2019打包WPF程序 版权声明:本文为本人原创文章,未经博主允许不得转载. https://blog.csdn.net/m0_37316917/article/details/8 ...

  7. ZBar 是款桌面电脑用条形码/二维码扫描工具

    ZBar 是款桌面电脑用条形码/二维码扫描工具 windows平台python 2.7环境编译安装zbar   最近一个项目需要识别二维码,找来找去找到了zbar和zxing,中间越过无数坑,总算基本 ...

  8. 中国象棋V2:Java源代码、毕业设计等所有文档,已经全部提交到CSDN-Code平台

    下载地址:https://code.csdn.net/FansUnion/chinesechess-v2 主要内容:Java源代码.毕业设计.API文档.声音图片等资源.Demo截图等一切的一切. 2 ...

  9. 个人官网第8次升级(新功能、用户体验、修复bug、系统优化)

    1.新功能. 操作日志和搜索日志的Excel报表下载. 2.用户体验. 如果是通过搜索,进入到一篇内容, 搜索关键词需要高亮. 比如,搜索"程序员"出现若干内容链接,打开链接的页面 ...

  10. 【codeforces 791A】Bear and Big Brother

    [题目链接]:http://codeforces.com/contest/791/problem/A [题意] 给你两个数字a和b; a每次乘3,b每次乘2 问你什么时候a第一次大于b [题解] 傻逼 ...