Tips
要序列化的对象一定要实现一个无参构造函数!!!!!!!
使用内置包
using System.Text.Json;
public class JsonHelper
{
public static void SaveData<T>(T obj,string TableName)
{
string path = $"./Config/{TableName}.json";
FileHelper.Exists(path);
string str = JsonSerializer.Serialize(obj);
File.WriteAllText(path, str);
}
public static T GetData<T>(string TableName)
{
try
{
string path = $"./Config/{TableName}.json";
FileHelper.Exists(path);
string str= File.ReadAllText(path);
if(string.IsNullOrEmpty(str))
{
return default;
}
return JsonSerializer.Deserialize<T>(str);
}
catch (Exception)
{
return default;
}
}
}
导包
using Newtonsoft.Json;
生成配置
string str = JsonConvert.SerializeObject(对象);
File.AppendAllText("./DataSrc/kvData.json", str);
读取配置
StreamReader reader = new StreamReader("./ReportDic/kvData.json");
string json = reader.ReadToEnd().Trim();
kvData = JsonConvert.DeserializeObject<Dictionary<string, Rule>>(json);