Files
Shrink-IDC/Utility/Data.cs.disable
Eicy 88abc095c2 init
Signed-off-by: Eicy <im@crash.work>
2024-12-17 00:23:59 +08:00

43 lines
1.2 KiB
Plaintext

using System.Text.Json;
using System.Text.Json.Serialization;
using Lagrange.Core.Common;
namespace Shrink.Utility;
public static class Data
{
public static void SaveKeystore(BotKeystore keystore) =>
File.WriteAllText("Keystore.json", JsonSerializer.Serialize(keystore));
public static BotDeviceInfo GetDeviceInfo()
{
if (File.Exists("DeviceInfo.json"))
{
var info = JsonSerializer.Deserialize<BotDeviceInfo>(File.ReadAllText("DeviceInfo.json"));
if (info != null) return info;
info = BotDeviceInfo.GenerateInfo();
File.WriteAllText("DeviceInfo.json", JsonSerializer.Serialize(info));
return info;
}
var deviceInfo = BotDeviceInfo.GenerateInfo();
File.WriteAllText("DeviceInfo.json", JsonSerializer.Serialize(deviceInfo));
return deviceInfo;
}
public static BotKeystore? LoadKeystore()
{
try
{
var text = File.ReadAllText("Keystore.json");
return JsonSerializer.Deserialize<BotKeystore>(text, new JsonSerializerOptions()
{
ReferenceHandler = ReferenceHandler.Preserve
});
}
catch
{
return null;
}
}
}