old_flsystem/类库/Api.Framework/Tools/IniHelper.cs

65 lines
1.9 KiB
C#
Raw Normal View History

2022-09-20 03:10:29 +00:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
namespace Api.Framework.Tools
{
/// <summary>
/// ini配置文件操作类
/// </summary>
public class IniHelper
{
[DllImport("kernel32")]
private static extern long WritePrivateProfileString(string section, string key, string val, string filepath);
[DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retval, int size, string filePath);
//获取ini文件路径
private string inifilepath;
/// <summary>
/// ini文件完整路径
/// </summary>
/// <param name="fileName"></param>
public IniHelper(string fileName)
{
this.inifilepath = fileName;
}
/// <summary>
/// 获取ini配置文件中指定key的数据
/// </summary>
/// <param name="node">头</param>
/// <param name="key">头下面的key</param>
/// <returns></returns>
public string GetValue(string node, string key)
{
StringBuilder s = new StringBuilder(1024);
GetPrivateProfileString(node, key, "", s, 1024, inifilepath);
return s.ToString();
}
/// <summary>
/// 设置ini配置文件的字段
/// </summary>
/// <param name="node">头</param>
/// <param name="key">键</param>
/// <param name="value">值</param>
public void SetValue(string node, string key, string value)
{
try
{
WritePrivateProfileString(node, key, value, inifilepath);
}
catch (Exception ex)
{
throw ex;
}
}
}
}