本章讲述:C# 修改Config文件的方法

首先设置路径

private static string configPath = string.Empty;
private static string configName = "TestViewer.exe.config";public MainWindow()
{InitializeComponent();configPath = System.Windows.Forms.Application.StartupPath + "\\" + configName;GetConfig();
}

获取Configuration方法有两种:

第一种方法:要求exe文件和Config文件在同一个目录下;

Configuration config = System.Configuration.ConfigurationManager.OpenExeConfiguration(configPath );//不需要后缀名

第二种方法:不要求exe文件和Config文件在同一目录下,该方法是制定Config文件的具体路径;

Config文件读取

private void GetConfig()
{if(System.IO.File.Exists(configPath)){ExeConfigurationFileMap ecf = new ExeConfigurationFileMap();ecf.ExeConfigFilename = configPath;Configuration config = System.Configuration.ConfigurationManager.OpenMappedExeConfiguration(ecf, ConfigurationUserLevel.None);var keys = config.AppSettings.Settings.AllKeys.ToList();if (keys == null || keys.Count == 0)return;if (keys.Contains("SoftVer")){SoftVer = config.AppSettings.Settings["SoftVer"].Value.ToString();}}else{MessageBox.Show("配置文件不存在,请检查!");}
}

Config文件保存

private void SaveConfig(string key, string value)
{ExeConfigurationFileMap ecf = new ExeConfigurationFileMap();ecf.ExeConfigFilename = configPath;Configuration config = System.Configuration.ConfigurationManager.OpenMappedExeConfiguration(ecf, ConfigurationUserLevel.None);if (config.AppSettings.Settings[key] != null){config.AppSettings.Settings[key].Value = value;}else{config.AppSettings.Settings.Add(key, value);}config.Save(ConfigurationSaveMode.Modified);
}

文件保存调用代码示例

private void Save()
{if (!string.IsNullOrEmpty(SoftVer))SaveConfig("SoftVer", SoftVer.ToString());ConfigurationManager.RefreshSection("appSettings");
}

Config文件其他操作

private void test()
{//增加<add>元素config.AppSettings.Settings.Add("VersionType", "V1.5.0.8");//删除<add>元素config.AppSettings.Settings.Remove("VersionType");//保存config.Save(ConfigurationSaveMode.Modified);
}

C# 修改Config文件,增删查改相关推荐

  1. java解析xml文件:创建、读取、遍历、增删查改、保存

    全栈工程师开发手册 (作者:栾鹏) java教程全解 java使用JDOM接口解析xml文件,包含创建.增删查改.保存,读取等操作. 需要引入jdom.jar,下载 xercesImpl.jar,下载 ...

  2. Python学生信息管理系统(增删查改、模糊查找、txt文件输出)# 谭子

    一.系统需求说明 本项目计划实现一个学生管理系统,学生信息包括:姓名.性别.手机号码,系统包含以下功能. 模块 子模块 说明 查询模块 查询全部学生的信息 显示当前系统内所有学员的信息 查询模块 精准 ...

  3. mysql 查询和修改组合_## 超详细MySQL常用语句,增删查改

    ## MySQL常用语句,增删查改,安装配置mysql服务 ***#新手博客,应届生,谢谢支持哟 记得点赞关注哟*** ***-----sql常见命令:--------*** 安装服务:mysqld ...

  4. 【前端】Vue+Element UI案例:通用后台管理系统-用户管理:Table表格增删查改、Pagination分页、搜索框

    文章目录 目标 代码 0.结构 1.按钮-删除 2.按钮-编辑 3.debug 4.样式 5.分页Pagination:功能 6.分页Pagination:样式 7.搜索框:功能 8.搜索框:样式 总 ...

  5. 微信小程序万能模板(tabBar\openid\授权登录\云开发之一个云函数实现云数据库增删查改!)

    Step1:新建小程序 使用自己的appid 勾选不使用云服务(后面可以在项目中再使用,这里若勾选会多出很多乱七八糟的东西) 选择不使用模板 Step2:搭建tabBar 从阿里巴巴图标库https: ...

  6. python学习之flask sqlalchemy介绍和使用 表操作增删查改

    flask sqlalchemy介绍和使用 表操作增删查改 内容详细 1 sqlalchemy介绍和快速使用 1.1 介绍 # SQLAlchemy是一个基于Python实现的ORM框架# djang ...

  7. Access+Vs 数据库增删查改——使用Asp.net的sqldatasource控件,根据如下Universtiy.mdb数据库,处理学生注册选课与授课老师的工作

    Access+Vs 数据库增删查改--使用Asp.net的sqldatasource控件,根据如下Universtiy.mdb数据库,处理学生注册选课与授课老师的工作 文章目录 Access+Vs 数 ...

  8. 8天学通MongoDB——第二天 细说增删查改

    2019独角兽企业重金招聘Python工程师标准>>> 看过上一篇,相信大家都会知道如何开启mongodb了,这篇就细说下其中的增删查改,首先当我们用上一篇同样的方式打开mongod ...

  9. Django:数据库表的建立与增删查改(ForeignKey和ManytoMany)

    数据库表的创建: 1.Django工程项目建立,基础环境调试. 2.创建表 from django.db import models class Publisher(models.Model):    ...

  10. 【C++ 语言】vector 容器 ( 容器分类 | vector 声明 | vector 初始化 | vector 容器元素增删查改 )

    文章目录 序列式容器 vector 简介 vector ( 向量 ) 头文件 vector ( 向量 ) 声明及初始化 vector ( 向量 ) 添加元素 vector ( 向量 ) 查询元素 ve ...

最新文章

  1. 如何在Objective C中声明Block?
  2. 笔记本右侧手滑板Synaptics
  3. python写网站和java写网站的区别-为什么说Java和Python现阶段并不适合普通网站建设...
  4. Fedora 30系统下,用g++编译opencv项目
  5. matlab GUI和simulink参数传递
  6. 力扣: 268. 丢失的数字
  7. tp3.2路由表达式支持的正则定义必须以“/”开头
  8. SAP Marketing Engagement Management
  9. vue 开发2017年变化回顾及2018年展望
  10. javascript 西瓜一期 04 解释型语言与编译型语言的翻译过程
  11. python_格式化输出(%用法和format用法)
  12. azure未连接_查找影响Azure成本的未使用资源
  13. 基础训练 龟兔赛跑预测
  14. Matlab中mapminmax函数使用注意事项
  15. 真的存在“对事不对人”吗?
  16. cad安装日志文件发生错误_安装软件提示“打开安装日志文件时发生错误”解决办法...
  17. 使用Echars实现水滴状、环形图、分割图、堆叠、组织架构图、地图轮廓等图表
  18. 一个列子演示java中软引用的回收时机
  19. 人工智能面临的主要威胁是对最终失去实际控制人工智能能力的恐惧
  20. 恶搞,vbs+bat实现随机位置无限弹窗

热门文章

  1. 从0开始写sql脚本到执行sql脚本。
  2. 将高德坐标拾取工具放入Element UI 对话框
  3. 记录下我磕磕碰碰的三个月找工作经历,BAT大厂面试总结
  4. Java加密总结:常见哈希算法总结、对称式加密与非对称式加密的对比
  5. 超详细软件著作权申请——资料篇
  6. lopatkin俄大神精简系统Windows 10 Pro 18362.10006 19H2 PreRelease x86-x64 ZH-CN MICRO
  7. Java实战项目,附带源码+视频教程。
  8. FreeFileSync - 最佳免费开源文件夹同步备份软件 (FTP/局域网/移动硬盘)
  9. 小程序技术能提升桌面应用安全等级?
  10. 10grac修改public-ip vip-ip