Files
GeekDesk/Util/CommonCode.cs
2021-04-12 13:46:05 +08:00

60 lines
1.8 KiB
C#

using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.Serialization.Formatters.Binary;
using System.Text;
using System.Threading.Tasks;
using GeekDesk.ViewModel;
/// <summary>
/// 提取一些代码
/// </summary>
namespace GeekDesk.Util
{
class CommonCode
{
private static string appConfigFilePath = AppDomain.CurrentDomain.BaseDirectory.Trim() + "\\config";
/// <summary>
/// 获取app配置
/// </summary>
/// <returns></returns>
public static AppConfig GetAppConfig()
{
AppConfig config;
if (!File.Exists(appConfigFilePath))
{
using (FileStream fs = File.Create(appConfigFilePath)) { }
config = new AppConfig();
SaveAppConfig(config);
}
else
{
using (FileStream fs = new FileStream(appConfigFilePath, FileMode.Open))
{
BinaryFormatter bf = new BinaryFormatter();
string json = bf.Deserialize(fs) as string;
config = JsonConvert.DeserializeObject<AppConfig>(json);
}
}
return config;
}
/// <summary>
/// 保存app配置
/// </summary>
/// <param name="config"></param>
public static void SaveAppConfig(AppConfig config)
{
using (FileStream fs = new FileStream(appConfigFilePath, FileMode.Create))
{
BinaryFormatter bf = new BinaryFormatter();
string json = JsonConvert.SerializeObject(config);
bf.Serialize(fs, json);
}
}
}
}