.NET Framework 類庫未提供讀寫ini文件的相應類,不過可以使用WinAPI來處理INI文件的讀寫,代碼很簡單。如下:
首先有兩個API函數需放在你的class中且只能如此,放在method或(class外namespace內),都會出現編譯錯誤:
1
using System.Runtime.InteropServices;
2
[DllImport("kernel32")]
3
private static extern long WritePrivateProfileString(string section,string key,string val,string filePath);
4
[DllImport("kernel32")]
5
private static extern long GetPrivateProfileString(string section,string key,string def,StringBuilder retVal,int size,string filePath);
WritePrivateProfileString方法說明:
功能:將信息寫入ini文件
返回值:long,如果為0則表示寫入失敗,反之成功。
參數1(section):寫入ini文件的某個小節名稱(不區分大小寫)。
參數2(key):上面section下某個項的鍵名(不區分大小寫)。
參數3(val):上面key對應的value
參數4(filePath):ini的文件名,包括其路徑(example: "c:config.ini")。如果沒有指定路徑,僅有文件名,系統會自動在windows目錄中查找是否有對應的ini文件,如果沒有則會自動在當前應用程序運行的根目錄下創建ini文件。
ini文件結構Example:
[JXCDB] --小節名(section)
server=192.168.1.1 --server是JXCDB下的某個鍵,192.168.1.1是server鍵的值(下同)
name=sa
pwd=198910
dbName=JXC
GetPrivateProfileString方法使用說明:
功能:從ini文件中讀取相應信息
返回值:返回所取信息字符串的字節長度
詳細使用Example:
首先先創建一個ini文件,並保存信息:
1
WritePrivateProfileString("JXCDB", "server", ".", Application.StartupPath + "\JXC_Server.ini");
2
WritePrivateProfileString("JXCDB", "name", txtName.Text.Trim(), Application.StartupPath + "\JXC_Server.ini");
3
WritePrivateProfileString("JXCDB", "pwd",txtPwd.Text.Trim(), Application.StartupPath + "\JXC_Server.ini");
4
WritePrivateProfileString("