You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

76 lines
2.3 KiB

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using Utils.Files;
namespace WeighBusiness
{
partial class ConfigUtil//保存、获取配置信息
{
/// <summary>
/// 将指定的配置保存起来。
/// <para>该配置已存在,则更新;不存在则添加</para>
/// </summary>
/// <param name="config">配置的项</param>
/// <param name="values">配置的值</param>
public static void SaveConfig(ConfigType config, string value)
{
SafeConfig.AddAndSaveConfig(ConfigFilePathAndName, FilePassword, config.ToFieldString(), value);
}
/// <summary>
/// 将指定的配置保存起来。
/// <para>该配置已存在,则更新;不存在则添加</para>
/// </summary>
/// <param name="configName">配置的项</param>
/// <param name="value">配置的值</param>
public static void SaveConfig(string configName, string value)
{
SafeConfig.AddAndSaveConfig(ConfigFilePathAndName, FilePassword, configName, value);
}
/// <summary>
/// 获取所有配置
/// </summary>
public static Dictionary<string, string> GetAllConfigs()
{
return GetAllConfigs(ConfigFilePathAndName);
}
/// <summary>
/// 获取所有配置
/// </summary>
public static Dictionary<string, string> GetAllConfigs(string configFilePathAndName)
{
if (!File.Exists(configFilePathAndName)) {//没有配置文件时,使用默认配置,并添加到配置文件中
var defaultConfigs = GetDefaultConfigs();
SafeConfig.AddAndSaveConfig(configFilePathAndName, FilePassword, defaultConfigs);
return defaultConfigs;
}
return SafeConfig.GetAllConfigs(configFilePathAndName, FilePassword);
}
/// <summary>
/// 获取指定的配置。没有配置则返回null
/// </summary>
/// <param name="configType">配置的项</param>
public static string GetConfig(ConfigType configType)
{
var allConfigs = GetAllConfigs();
if (allConfigs.Keys.Contains(configType.ToFieldString()))
return allConfigs[configType.ToFieldString()];
return null;
}
private static Dictionary<string, string> GetDefaultConfigs()
{
Dictionary<string, string> defaultConfigs = new Dictionary<string, string>();
defaultConfigs.Add(ConfigType..ToFieldString(), string.Empty);
return defaultConfigs;
}
}
}