WritePrivateProfileString等读写.ini配置文件

配置文件中经常用到ini文件,在VC中其函数分别为:
写入.ini文件:

 
  1. BOOL WritePrivateProfileString(

  2. LPCTSTR lpAppName, // INI文件中的一个字段名[节名]可以有很多个节名

  3.  
  4. LPCTSTR lpKeyName, // lpAppName 下的一个键名,也就是里面具体的变量名

  5.  
  6. LPCTSTR lpString, // 键值,也就是数据

  7.  
  8. LPCTSTR lpFileName // INI文件的路径

  9. );

  10.  


 

读取.ini文件:

 
  1. DWORD GetPrivateProfileString(

  2. LPCTSTR lpAppName, // INI文件中的一个字段名[节名]可以有很多个节名

  3.  
  4. LPCTSTR lpKeyName, // lpAppName 下的一个键名,也就是里面具体的变量名

  5.  
  6. LPCTSTR lpDefault, // 如果lpReturnedString为空,则把个变量赋给lpReturnedString

  7.  
  8. LPTSTR lpReturnedString, // 存放键值的指针变量,用于接收INI文件中键值(数据)的接收缓冲区

  9.  
  10. DWORD nSize, // lpReturnedString的缓冲区大小

  11.  
  12. LPCTSTR lpFileName // INI文件的路径

  13. );

  14.  


 

读取整形值:(返回值为读到的整)

 
  1. UINT GetPrivateProfileInt(

  2. LPCTSTR lpAppName, // INI文件中的一个字段名[节名]可以有很多个节名

  3. LPCTSTR lpKeyName, // lpAppName 下的一个键名,也就是里面具体的变量名

  4. INT nDefault, // 如果没有找到指定的数据返回,则把个变量值赋给返回值

  5.  
  6. LPCTSTR lpFileName // INI文件的路径

  7.  
  8. );

  9.  



读写INI文件时相对路径和绝对路径都可以,根据实际情况选择

"..\\IniFileName.ini"    // 这样的为相对路径

"D:\\IniFileName.ini"    // 这样的为绝对路径

 

MAX_PATH:是微软最大路径占的字节所设的宏


例子:

写INI文件:

 

 
  1. LPTSTR lpPath = new char[MAX_PATH];

  2.  
  3. strcpy(lpPath, "D:\\IniFileName.ini");

  4.  
  5. WritePrivateProfileString("LiMing", "Sex", "Man", lpPath);

  6. WritePrivateProfileString("LiMing", "Age", "20", lpPath);

  7.  
  8. WritePrivateProfileString("Fangfang", "Sex", "Woman", lpPath);

  9. WritePrivateProfileString("Fangfang", "Age", "21", lpPath);

  10.  
  11.  
  12.  
  13. delete [] lpPath;

  14.  
  15.  
  16. INI文件如下:

  17.  
  18. [LiMing]

  19. Sex=Man

  20. Age=20

  21. [Fangfang]

  22. Sex=Woman

  23. Age=21

  24.  
  25. 读INI文件:

  26.  
  27.  
  28.  
  29. LPTSTR lpPath = new char[MAX_PATH];

  30. LPTSTR LiMingSex = new char[6];

  31. int LiMingAge;

  32. LPTSTR FangfangSex = new char[6];

  33. int FangfangAge;

  34.  
  35.  
  36. strcpy(lpPath, "..\\IniFileName.ini");

  37.  
  38. GetPrivateProfileString("LiMing", "Sex", "", LiMingSex, 6, lpPath);

  39. LiMingAge = GetPrivateProfileInt("LiMing", "Age", 0, lpPath);

  40.  
  41. GetPrivateProfileString("Fangfang", "Sex", "", FangfangSex, 6, lpPath);

  42. FangfangAge = GetPrivateProfileInt("Fangfang", "Age", 0, lpPath);

  43.  
  44.  
  45.  
  46. delete [] lpPath;

  47.  
  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值