Files
cneicy 739fe328e7
Publish UPM package / publish (push) Failing after 1s
chore: initialize standalone UPM package
2026-08-26 02:50:03 +08:00

28 lines
940 B
C#

using System.Text;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace ShrinkDataSaver
{
public static class DataSerializer
{
private static readonly JsonSerializerSettings Settings = new()
{
NullValueHandling = NullValueHandling.Ignore,
DefaultValueHandling = DefaultValueHandling.Include,
Formatting = Formatting.None
};
public static byte[] Serialize<T>(T obj)
=> Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(obj, Settings));
public static T Deserialize<T>(byte[] data)
=> JsonConvert.DeserializeObject<T>(Encoding.UTF8.GetString(data), Settings);
public static JObject ToJObject(byte[] data)
=> JObject.Parse(Encoding.UTF8.GetString(data));
public static byte[] FromJObject(JObject obj)
=> Encoding.UTF8.GetBytes(obj.ToString(Formatting.None));
}
}