using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using System;
using System.IO;
using System.Text;
namespace Update.Utils
{
public static class Json
{
///
/// json格式解码
///
///
///
///
public static T Decode(Stream stream)
{
JsonSerializer serializer = new JsonSerializer();
serializer.Converters.Add(new JavaScriptDateTimeConverter());//指定转化日期的格式
using (StreamReader sr = new StreamReader(stream, Encoding.UTF8))
using (JsonReader reader = new JsonTextReader(sr))
{
return serializer.Deserialize(reader);
}
}
///
/// json格式解码
///
///
///
///
public static T Decode(string txt)
{
JsonSerializer serializer = new JsonSerializer();
serializer.Converters.Add(new JavaScriptDateTimeConverter());//指定转化日期的格式
using (StringReader sr = new StringReader(txt))
using (JsonReader reader = new JsonTextReader(sr))
{
T res = default;
try
{
res = serializer.Deserialize(reader);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
return res;
}
}
///
/// json格式编码
///
///
///
public static string Encode(object obj)
{
return JsonConvert.SerializeObject(obj, new JavaScriptDateTimeConverter());
}
}
}