📄 classinifile.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Runtime.InteropServices;
namespace QXPDA
{
/// <summary>
/// ClassIniFile 读写ini文件。
/// </summary>
public class ClassIniFile
{
private string fileName;
[DllImport("kernel32")]
private static extern int GetPrivateProfileInt(
string lpAppName,
string lpKeyName,
int nDefault,
string lpFileName
);
[DllImport("kernel32")]
private static extern int GetPrivateProfileString(
string lpAppName,
string lpKeyName,
string lpDefault,
StringBuilder lpReturnedString,
int nSize,
string lpFileName
);
[DllImport("kernel32")]
private static extern bool WritePrivateProfileString(
string lpAppName,
string lpKeyName,
string lpString,
string lpFileName
);
//构造读写全路径为filename的ini文件的类
//构造函数
public ClassIniFile(string filename)
{
fileName = filename;
}
/// <summary>
/// 读取整型数据
/// </summary>
/// <param name="section"></param>
/// <param name="key"></param>
/// <param name="def"></param>
/// <returns></returns>
public int GetInt(string section, string key, int def)
{
return GetPrivateProfileInt(section, key, def, fileName);
}
/// <summary>
/// 读取字符串数据
/// </summary>
/// <param name="section"></param>
/// <param name="key"></param>
/// <param name="def"></param>
/// <returns></returns>
public string GetString(string section, string key, string def)
{
StringBuilder temp = new StringBuilder(1024);
GetPrivateProfileString(section, key, def, temp, 1024, fileName);
return temp.ToString();
}
/// <summary>
/// 写入整型数据
/// </summary>
/// <param name="section"></param>
/// <param name="key"></param>
/// <param name="iVal"></param>
public void WriteInt(string section, string key, int iVal)
{
WritePrivateProfileString(section, key, iVal.ToString(), fileName);
}
/// <summary>
/// 写入字符串数据
/// </summary>
/// <param name="section"></param>
/// <param name="key"></param>
/// <param name="strVal"></param>
public void WriteString(string section, string key, string strVal)
{
WritePrivateProfileString(section, key, strVal, fileName);
}
/// <summary>
/// 删除键值
/// </summary>
/// <param name="section"></param>
/// <param name="key"></param>
public void DelKey(string section, string key)
{
WritePrivateProfileString(section, key, null, fileName);
}
/// 删除模块
public void DelSection(string section)
{
WritePrivateProfileString(section, null, null, fileName);
}
public string Myfile()
{
return fileName;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -