引用 http://www.pin5i.com/showtopic-8418.html
代碼
using System.Runtime.InteropServices;
using System.Text;
namespace INIFile
{
/// <summary>
/// 讀寫ini檔案的類
/// 調用kernel32.dll中的兩個api:WritePrivateProfileString,GetPrivateProfileString來實現對ini 檔案的讀寫。
/// INI檔案是文字檔,
/// 由若干節(section)組成,
/// 在每個帶括弧的標題下面,
/// 是若干個關鍵詞(key)及其對應的值(value)
/// [Section] Key=value
/// </summary>
public class IniFile
{
/// <summary>
/// ini檔案名稱(帶路徑)
/// </summary>
public string filePath; //聲明讀寫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 def,StringBuilder retVal,int size,string filePath);
/// <summary>
/// 類的建構函式
/// </summary>
/// <param name="INIPath">INI檔案名稱</param>
public IniFile(string INIPath)
{
filePath = INIPath;
}
/// <summary>
/// 寫INI檔案
/// </summary>
/// <param name="Section">Section</param>
/// <param name="Key">Key</param>
/// <param name="value">value</param>
public void WriteInivalue(string Section,string Key,string value)
{
WritePrivateProfileString(Section,Key,value,this.filePath);
}
/// <summary>
/// 讀取INI檔案指定部分
/// </summary>
/// <param name="Section">Section</param>
/// <param name="Key">Key</param>
/// <returns>String</returns>
public string ReadInivalue(string Section,string Key)
{
StringBuilder temp = new StringBuilder(255);
int i = GetPrivateProfileString(Section,Key,"",temp,255,this.filePath); return temp.ToString();
}
}
}