C ini 檔案的讀寫

2021-08-19 17:40:58 字數 2367 閱讀 2983

先 參考 之前的乙個博文

配置檔案中經常用到ini檔案,在vc中其函式分別為:

寫入.ini檔案:

bool writeprivateprofilestring(

lpctstr lpstring,   // 鍵值,也就是資料

lpctstr lpfilename  // ini檔案的路徑

);讀取.ini檔案:

dword getprivateprofilestring(

lpctstr lpdefault,        // 如果lpreturnedstring為空,則把個變數賦給lpreturnedstring

lptstr lpreturnedstring,  // 存放鍵值的指標變數,用於接收ini檔案中鍵值(資料)的接收緩衝區

dword nsize,            // lpreturnedstring的緩衝區大小

lpctstr lpfilename        // ini檔案的路徑

);讀取整形值:(返回值為讀到的整)

uint getprivateprofileint(

int ndefault,       // 如果沒有找到指定的資料返回,則把個變數值賦給返回值

lpctstr lpfilename  // ini檔案的路徑

);讀寫ini檔案時相對路徑和絕對路徑都可以,根據實際情況選擇

"..\\inifilename.ini"    // 這樣的為相對路徑

"d:\\inifilename.ini"    // 這樣的為絕對路徑

max_path:是微軟最大路徑佔的位元組所設的巨集

例子:寫ini檔案:

lptstr lppath = new char[max_path];

strcpy(lppath, "d:\\inifilename.ini");

writeprivateprofilestring("liming", "***", "man", lppath);

writeprivateprofilestring("liming", "age", "20", lppath);

writeprivateprofilestring("fangfang", "***", "woman", lppath);

writeprivateprofilestring("fangfang", "age", "21", lppath);

delete  lppath;

ini檔案如下:

[liming]

***=man

age=20

[fangfang]

***=woman

age=21

讀ini檔案:

lptstr lppath = new char[max_path];

lptstr liming*** = new char[6];

int limingage;

lptstr fangfang*** = new char[6];

int fangfangage;

strcpy(lppath, "..\\inifilename.ini");

getprivateprofilestring("liming", "***", "", liming***, 6, lppath);

limingage = getprivateprofileint("liming", "age", 0, lppath);

getprivateprofilestring("fangfang", "***", "", fangfang***, 6, lppath);

fangfangage = getprivateprofileint("fangfang", "age", 0, lppath);

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

實際應用的例子:

(1) 讀ini 內容:

這個是string 的讀入:

lptstr lptexts = new tchar(9);

getprivateprofilestring(text("threshold"), text("edge_threshold"), text("0.19"), lptexts, 8, text("..\\specvalue.ini"));

string str = ct2a(lptexts);

這個是 int 的讀入:

(2) 寫 ini 內容:

writeprivateprofilestring(_t("regionsetup"), text("in_size"), str2lpt(in_size), text("..\\specvalue.ini"));

其中的乙個子函式用於  string 轉 lptstr:

lptstr str2lpt(string v)

C ini檔案讀寫類

vc中提供了api函式進行ini檔案的讀寫操作,但是微軟推出的c 程式語言中卻沒有相應的方法,下面是乙個c ini檔案讀寫類,從網上收集的,很全,就是沒有對section的改名功能,高手可以增加乙個。using system using system.io using system.runtime....

C ini檔案讀寫 例項

ini檔案一般用於儲存當前執行的程式或者一些臨時的配置屬性的檔案。也有時用於儲存一定的資料以便於臨時或者配置上的需要。文字格式如下 section1 name 用 括起來,其包含多個key keyname1 value1 格式是 key value。keyname2 value2 section2 ...

C ini檔案讀寫 例項

ini檔案一般用於儲存當前執行的程式或者一些臨時的配置屬性的檔案。也有時用於儲存一定的資料以便於臨時或者配置上的需要。文字格式如下 section1 name 用 括起來,其包含多個key keyname1 value1 格式是 key value。keyname2 value2 section2 ...