如何在C 中讀寫INI檔案

2021-09-30 08:26:14 字數 2064 閱讀 9015

檢視文章

如何在c#中讀寫ini檔案

2009-11-16 10:35

[section1]

keyword1=valuel

keyword2=value2

……[section2]

keyword3=value3

keyword4=value4

c#和win32api函式

c#並不像c++,擁有屬於自己的類庫。c#使用的類庫是.net框架為所有.net程式開發提供的乙個共有的類庫——.netframeworksdk。雖然.netframeworksdk內容十分龐大,功能也非常強大,但還不能面面俱到,至少它並沒有提供直接操作ini檔案所需要的相關的類。在本文中,c#操作ini檔案使用的是windows系統自帶win32的api函式——writeprivateprofilestring()和getprivateprofilestring()函式。這二個函式都位於「kernel32.dll」檔案中。

我們知道在c#中使用的類庫都是託管**(managedcode)檔案,而win32的api函式所處的檔案,都是非託管**(unmanagedcode)檔案。這就導致了在c#中不可能直接使用這些非託管**檔案中的函式。好在.net框架為了保持對下的相容,也為了充分利用以前的資源,提出了互操作,通過互操作可以實現對win32的api函式的呼叫。互操作不僅適用於win32的api函式,還可以用來訪問託管的com物件。c#中對win32的api函式的互操作是通過命名空間「system.runtime.interopservices」中的「dllimport」特徵類來實現的。它的主要作用是指示此屬性化方法是作為非託管dll的輸出實現的。下面**就是在c#利用命名空間「system.runtime.interopservices」中的「dllimport」特徵類申明上面二個win32的api函式:

c#申明ini檔案的寫操作函式writeprivateprofilestring():

[dllimport("kernel32")]

privatestaticexternlongwriteprivateprofilestring(string

section,

stringkey,strin**al,stringfilepath);

引數說明:section:ini檔案中的段落;key:ini檔案中的關鍵字;val:ini檔案中關鍵字的數值;filepath:ini檔案的完整的路徑和名稱。

c#申明ini檔案的讀操作函式getprivateprofilestring():

[dllimport("kernel32")]

privatestaticexternintgetprivateprofilestring(stringsection,

stringkey,stringdef,stringbuilderretval,

intsize,stringfilepath);

引數說明:section:ini檔案中的段落名稱;key:ini檔案中的關鍵字;def:無法讀取時候時候的預設數值;retval:讀取數值;size:數值的大小;filepath:ini檔案的完整路徑和名稱。

下面是乙個讀寫ini檔案的類

public class iniclass

///

/// 寫入ini檔案

///

/// 專案名稱(如 [typename] )

/// 鍵

/// 值

public void iniwritevalue(string section,string key,string value)

///

/// 讀出ini檔案

///

/// 專案名稱(如 [typename] )

/// 鍵

public string inireadvalue(string section,string key)

///

/// 驗證檔案是否存在

///

/// 布林值

public bool existinifile()

{return file.exists(inipath);

如何在C 中讀寫INI檔案

ini檔案就是擴充套件名為 ini 的檔案。在windows系統中,ini檔案是很多,最重要的就是 system.ini system32.ini 和 win.ini 該檔案主要存放使用者所做的選擇以及系統的各種引數。使用者可以通過修改ini檔案,來改變應用程式和系統的很多配置。但自從windows...

如何在C 中讀寫INI檔案

ini檔案就是擴充套件名為 ini 的檔案。在windows系統中,ini檔案是很多,最重要的就是 system.ini system32.ini 和 win.ini 該檔案主要存放使用者所做的選擇以及系統的各種引數。使用者可以通過修改ini檔案,來改變應用程式和系統的很多配置。但自從windows...

如何在C 中讀寫INI檔案

ini檔案就是擴充套件名為 ini 的檔案。在windows系統中,ini檔案是很多,最重要的就是 system.ini system32.ini 和 win.ini 該檔案主要存放使用者所做的選擇以及系統的各種引數。使用者可以通過修改ini檔案,來改變應用程式和系統的很多配置。但自從windows...