• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#--使用json配置文件方法【读写Json,适合小项目】

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

1,DAL中添加帮助类JsonConfigHelper

using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

/*
 * 需要添加引用Newtonsoft.Json.dl
 */

namespace KobelcoReportDAL
{
  public class JsonConfigHelper
    {

        private static Dictionary<string, string> configDic = new Dictionary<string, string>();

        /// <summary>
        /// 读取配置信息
        /// </summary>
        /// <param name="key"></param>
        /// <returns></returns>
        public static string ReadConfig(string key)
        {
            if (File.Exists("config.json") == false)//如果不存在就创建file文件夹
            {
                FileStream f = File.Create("config.json");
                f.Close();
            }
            string s = File.ReadAllText("config.json");
            try
            {
                configDic = JsonConvert.DeserializeObject<Dictionary<string, string>>(s);
            }
            catch
            {
                configDic = new Dictionary<string, string>();
            }

            if (configDic != null && configDic.ContainsKey(key))
            {
                return configDic[key];
            }
            else
            {
                return string.Empty;
            }
        }

        /// <summary>
        /// 添加配置信息
        /// </summary>
        /// <param name="key"></param>
        /// <param name="value"></param>
        public static void WriteConfig(string key, string value)
        {
            if (configDic == null)
            {
                configDic = new Dictionary<string, string>();
            }
            configDic[key] = value;
            string s = JsonConvert.SerializeObject(configDic);
            File.WriteAllText("config.json", s);
        }

        /// <summary>
        /// 删除配置信息
        /// </summary>
        /// <param name="key"></param>
        public static void DeleteConfig(string key)
        {
            if (configDic != null && configDic.ContainsKey(key))
            {
                configDic.Remove(key);
                string s = JsonConvert.SerializeObject(configDic);
                File.WriteAllText("config.json", s);
            }
        }
    }
}

  

2,读取配置文件【窗体加载的时候】

            //【1】读取配置文件
            filePath.RefFilePath = JsonConfigHelper.ReadConfig(this.txt_ReferenceFilePath.Name);
            filePath.MatchFilePath= JsonConfigHelper.ReadConfig(this.txt_MatchingFilePath.Name);
            filePath.AtlasDataFilePath= JsonConfigHelper.ReadConfig(this.txt_AtlasFilePath.Name);
            //【2】为控件赋值
            this.txt_ReferenceFilePath.Text= filePath.RefFilePath;
            this.txt_MatchingFilePath.Text = filePath.MatchFilePath;
            this.txt_AtlasFilePath.Text = filePath.AtlasDataFilePath;

  

3,修改配置文件【修改保存按钮】

        //修改配置文件
        private void btn_modify_Click(object sender, EventArgs e)
        {
            JsonConfigHelper.WriteConfig(this.txt_ReferenceFilePath.Name, this.txt_ReferenceFilePath.Text);
            JsonConfigHelper.WriteConfig(this.txt_MatchingFilePath.Name, this.txt_MatchingFilePath.Text);
            JsonConfigHelper.WriteConfig(this.txt_AtlasFilePath.Name, this.txt_AtlasFilePath.Text);
        }

 

4,保存的配置文件位置

 

 

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
LeetCode887.鸡蛋掉落(C++)发布时间:2022-07-18
下一篇:
C#编程音量控制发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap