Files
StandardSence/StandardScene.Core/Utils/JsonParser.cs
T
2026-06-14 11:19:15 +08:00

51 lines
1.4 KiB
C#

using Newtonsoft.Json;
using SimpleCore.Library;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using StandardScene.Chained;
namespace StandardScene.Utils
{
public static class JsonParser
{
public static object fileSync = new object();
public static void WriteJsonFile(TransportDelivery obj)
{
try
{
lock (fileSync)
File.WriteAllText($"log/tasklist/{obj.TaskId}.json",
JsonConvert.SerializeObject(obj, Formatting.Indented));
}
catch (Exception e)
{
Diagnosis.Log("write tasklist error" + ExceptionFormatter.FormatEx(e), "error", true);
}
}
public static string ReadJsonFile(string path)
{
lock (fileSync)
{
return File.ReadAllText(path);
}
}
// Json->Object
//DataContractJsonSerializer jsonSerializer = new DataContractJsonSerializer(typeof(ChainedDeliveryMission.Delivery));
public static TransportDelivery Deserialize(string json)
{
TransportDelivery obj = new TransportDelivery();
using MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(json));
JsonConvert.PopulateObject(json, obj);
return obj;
}
}
}