最近出差在北京做一个小项目,项目里需要读取配置文件的小功能,觉得挺有参考意义的就把代码发上来给大家参考一下。我们选择了直接用微软的读取配置文件的方法。
这个是程序的运行设计效果,就是把这些参数可以进行灵活设置,灵活保存设置状态。
程序编译后自动会产生相应的配置文件,是跟项目的名称一样的配置文件。
读取配置文件及保存配置的具体代码参考如下,希望能给你节省一些时间,直接复制粘贴这个代码就可以用了:
// ------------------------------------------------------------ // All Rights Reserved , Copyright (C) 2010 , CDPF , Ltd. // ------------------------------------------------------------ using System; using System.Configuration; using System.Windows.Forms; using Utilities; namespace DirectSeeding { /// <summary> /// FrmConfig /// 读取配置文件 /// /// 修改纪录 /// /// 2011.01.14 版本: 1.0 JiRiGaLa 完善程序的注释等、从新整理代码。 /// /// 版本:1.0 /// /// <author> /// <name> JiRiGaLa </name> /// <date> 2011.01.14 </date> /// </author> /// </summary> public partial class FrmConfig : Form { public FrmConfig() { InitializeComponent(); } /// <summary> /// 读取配置文件 /// </summary> private void GetConfig() { this .txtWriteFileName.Text = ConfigurationManager.AppSettings[ " WriteFileName " ]; this .txtWritePath.Text = ConfigurationManager.AppSettings[ " WritePath " ].Replace( " | " , Environment.NewLine); this .txtPostMessageURL.Text = ConfigurationManager.AppSettings[ " PostMessageURL " ]; this .txtLeasedLineURL.Text = ConfigurationManager.AppSettings[ " LeasedLineURL " ]; } private void FrmDirectSeeding_Load( object sender, EventArgs e) { this .GetConfig(); } /// <summary> /// 保存配置文件 /// </summary> private void SaveConfig() { // 写入参数设置 Configuration configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); configuration.AppSettings.Settings[ " WriteFileName " ].Value = this .txtWriteFileName.Text; configuration.AppSettings.Settings[ " WritePath " ].Value = this .txtWritePath.Text.Trim().Replace(Environment.NewLine, " | " ); configuration.AppSettings.Settings[ " PostMessageURL " ].Value = this .txtPostMessageURL.Text; configuration.AppSettings.Settings[ " LeasedLineURL " ].Value = this .txtLeasedLineURL.Text; configuration.Save(); // 重新读取参数 ConfigurationManager.RefreshSection( " appSettings " ); WriteFile.WriteFileName = ConfigurationManager.AppSettings[ " WriteFileName " ]; WriteFile.WritePath = ConfigurationManager.AppSettings[ " WritePath " ].Split( ' | ' ); PostMessage.PostMessageURL = ConfigurationManager.AppSettings[ " PostMessageURL " ]; // PostMessage.LeasedLineURL = ConfigurationManager.AppSettings["LeasedLineURL"]; } private void btnSavaConfig_Click( object sender, EventArgs e) { // 保存设置 SaveConfig(); } } }
将权限管理、工作流管理做到我能力的极致,一个人只能做好那么很少的几件事情。
About