讀寫配置檔案 ini

2021-05-28 11:28:44 字數 1446 閱讀 1328

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

其中個引數的意思:

lpctstr lpstring ---------是鍵值,也就是變數的值, 必須為lpctstr或cstring型別

lpctstr lpfilename --------完整的ini檔案路徑名

lpctstr lpdefaut ----------如果沒有其前兩個引數值,則將此值賦給變數

lpstr lpreturnedstring --------接收ini檔案中的值的cstring物件,即接收緩衝區

dword nsize ------接收緩衝區的大小

例子:cstring strname,strtemp;

int nage;

strname = "jacky";

nage = 13;

writeprivateprofilestring("student","name",strname,"c:\\setting.ini");

結果:(ini檔案中顯示如下:)

[student]

name=jacky

讀取:cstring sname;

getprivateprofilestring("student","name","defaultname",sname.getbuffer(max_length),max_length,"c:\\setting.ini");

結果:sname = "jacky";這裡需要注意點就是用完getbuffer函式後一定要釋放(用sname.releasebuffer()函式),不然後面再用到sname的其他子函式就會失靈。

讀整數比較簡單,如下

int result = getprivateprofileint("student","nage",0,"c:\\setting.ini")返回值即為所讀取的結果!

在getprivateprofilestring最後乙個引數是配置檔案路徑的引數,此路徑只能是絕對路徑,不能是相對路徑,但現在我需要是我的exe檔案能和我的配置檔案在一起。因此我使用了getcurrentdirectory函式。

原**如下:

cstring server_ip;

cstring des="";

::getcurrentdirectory(max_pathlength,des.getbuffer(max_pathlength));

des.releasebuffer();

des+="\\config.ini";

getprivateprofilestring("phonedemo","server_ip","",server_ip.getbuffersetlength(15),15,des);

server_ip.releasebuffer();

注意:在這裡使用cstring變數時,在使用完getbuffer後,緊接著一定要使用releasebuffer()函式,才可以進行其他的諸如字串+操作

讀寫配置檔案 ini

在我們寫的程式當中,總有一些配置資訊需要儲存下來,以便完成程式的功能,最簡單的辦法就是將這些資訊寫入ini檔案中,程式初始化時再讀入.具體應用如下 一.將資訊寫入.ini檔案中.1.所用的winapi函式原型為 bool writeprivateprofilestring lpctstr lpkey...

讀寫INI配置檔案

在一些c s程式中我們經常會使用ini配置檔案 優點 1.靈活。2.相對於一些資料量的程式,相對使用資料庫更節約資源。配置檔案操作類 internal static class operconfigfile path.getdirectoryname assembly.getexecutingass...

C stl 讀寫ini配置檔案

標頭檔案 inifile.h 複製 ifndef cini file define cini file include include using namespace std 程式說明 1.從ini檔案中讀取引數 2.將引數寫入ini格式檔案 3.sectin 必須第乙個字元為 並以 結束 4.後的...