mirror of
https://github.com/tribufu/ServerManagers
synced 2026-06-01 09:42:39 +00:00
Discord Plugin Source
Added discord plugin source to github
This commit is contained in:
parent
4a163627b8
commit
6f671a9d57
50 changed files with 3673 additions and 0 deletions
64
Plugins/Discord/source/Plugin.Common/Utils/JsonUtils.cs
Normal file
64
Plugins/Discord/source/Plugin.Common/Utils/JsonUtils.cs
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
using System.IO;
|
||||
using System.Runtime.Serialization.Json;
|
||||
|
||||
namespace ServerManagerTool.Plugin.Common
|
||||
{
|
||||
public static class JsonUtils
|
||||
{
|
||||
public static T DeserializeFromFile<T>(string file)
|
||||
{
|
||||
if (string.IsNullOrEmpty(file) || !File.Exists(file))
|
||||
return default(T);
|
||||
|
||||
StreamReader streamReader = null;
|
||||
|
||||
try
|
||||
{
|
||||
streamReader = File.OpenText(file);
|
||||
|
||||
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T));
|
||||
return (T)serializer.ReadObject(streamReader.BaseStream);
|
||||
}
|
||||
catch
|
||||
{
|
||||
return default(T);
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (streamReader != null)
|
||||
streamReader.Close();
|
||||
}
|
||||
}
|
||||
|
||||
public static bool SerializeToFile<T>(T value, string file)
|
||||
{
|
||||
if (value == null)
|
||||
return false;
|
||||
|
||||
StreamWriter streamWriter = null;
|
||||
|
||||
try
|
||||
{
|
||||
var folder = Path.GetDirectoryName(file);
|
||||
if (!Directory.Exists(folder))
|
||||
Directory.CreateDirectory(folder);
|
||||
|
||||
streamWriter = File.CreateText(file);
|
||||
|
||||
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(T));
|
||||
serializer.WriteObject(streamWriter.BaseStream, value);
|
||||
|
||||
return true;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return false;
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (streamWriter != null)
|
||||
streamWriter.Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue