using System.Collections.Generic;
using System.Text;
using System.IO;
using Newtonsoft.Json;
using System.Threading;
namespace Utils
{
public class Model
{
public string ID { get; set; }
public string RecordNum { get; set; }
public string DateTime { get; set; }
public string UpdateType { get; set; }
public string UpdateContent { get; set; }
}
class JsonConver
{
private static JsonConver mInstance;
public static JsonConver getInstance()
{
if (null == mInstance)
{
mInstance = new JsonConver();
}
return mInstance;
}
//根据路径获取JSON文件并进行转化
public List<Model> getJsonModel(string url)
{
string jsonData = GetJsonFile(url);
List<Model> list = JsonConvert.DeserializeObject<List<Model>>(jsonData);
return list;
}
//将数据LIST信息写成JSON文件并进行保存
public void listToJson(string url, object list)
{
Mutex mutex = new Mutex();
mutex.WaitOne();
string json= JsonConvert.SerializeObject(list);
writeJsonFile(url, json);
mutex.ReleaseMutex();
}
//获取JSON文件
private string GetJsonFile(string filepath)
{
string json = string.Empty;
using (FileStream fs = new FileStream(filepath, FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite, FileShare.ReadWrite))
{
using (StreamReader sr = new StreamReader(fs, Encoding.UTF8))
{
json = sr.ReadToEnd().ToString();
}
}
return json;
}
//写入JSON文件
private void writeJsonFile(string path, string jsonConents)
{
using (FileStream fs = new FileStream(path, FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite, FileShare.ReadWrite))
{
using (StreamWriter sw = new StreamWriter(fs, Encoding.UTF8))
{
sw.WriteLine(jsonConents);
}
}
}
}
}
C# Json
最新推荐文章于 2024-04-17 08:50:31 发布