68 lines
2.3 KiB
C#
68 lines
2.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Runtime.InteropServices;
|
|
using System.Text;
|
|
|
|
namespace cn.sancainet.Resident.health.register.Utils
|
|
{
|
|
public class IniFile
|
|
{
|
|
#region 声明读写INI文件的API函数
|
|
[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 defVal, StringBuilder retVal, int size, string filePath);
|
|
|
|
[DllImport("kernel32")]
|
|
private static extern int GetPrivateProfileString(string section, string key, string defVal, Byte[] retVal, int size, string filePath);
|
|
#endregion
|
|
|
|
public string Path = AppDomain.CurrentDomain.BaseDirectory + "setting.ini";
|
|
public IniFile()
|
|
{
|
|
if (!File.Exists(Path))
|
|
File.Create(Path);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 写INI文件
|
|
/// </summary>
|
|
/// <param name="section">段落</param>
|
|
/// <param name="key">键</param>
|
|
/// <param name="iValue">值</param>
|
|
public void writeValue(string section, string key, string value)
|
|
{
|
|
WritePrivateProfileString(section, key, value, this.Path);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 读取INI文件
|
|
/// </summary>
|
|
/// <param name="section">段落</param>
|
|
/// <param name="key">键</param>
|
|
/// <returns>返回的键值</returns>
|
|
public string readValue(string section, string key)
|
|
{
|
|
StringBuilder temp = new StringBuilder(255);
|
|
int i = GetPrivateProfileString(section, key, "", temp, 255, this.Path);
|
|
return temp.ToString();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 读取INI文件
|
|
/// </summary>
|
|
/// <param name="Section">段,格式[]</param>
|
|
/// <param name="Key">键</param>
|
|
/// <returns>返回byte类型的section组或键值组</returns>
|
|
public byte[] readValuebyte(string section, string key)
|
|
{
|
|
byte[] temp = new byte[255];
|
|
int i = GetPrivateProfileString(section, key, "", temp, 255, this.Path);
|
|
return temp;
|
|
}
|
|
}
|
|
}
|