Files
GazpromApp/Utils/DataSerialization.cs
T
2025-07-10 10:57:42 +03:00

51 lines
1.1 KiB
C#

using System;
using System.Text.Json;
using GazpromApp.Models;
namespace GazpromApp.Utils;
public static class DataSerialization
{
private static void SaveData(string path, string data)
{
System.IO.File.WriteAllText(path, data);
}
private static string LoadData(string path)
{
return System.IO.File.ReadAllText(path);
}
public static void SavePoint(Point point, string path)
{
SaveData(path, point.Serialize());
}
public static Point? LoadPoint(string path)
{
return Deserialization.Deserialize(LoadData(path));
}
}
public static class Serialization
{
public static string Serialize(this Point point)
{
return JsonSerializer.Serialize(point);
}
}
public static class Deserialization
{
public static Point? Deserialize(string point)
{
try
{
return string.IsNullOrEmpty(point) ? JsonSerializer.Deserialize<Point>(point) : null;
}
catch
{
throw new ArgumentException("Ошибка расшивроки json файла");
}
}
}