.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(
"