关于GetPrivateProfileSection函数读INI文件时的问题
INI文件内容如下 :
[navigation]
12=2
44444=444
666=888
char strCurrent[256];
CString strFilePath;
char strNavi[256];
strFilePath=GetCurrentDirectory(256,strCurrent); //获得当前路径
strFilePath.Format("%s\\navigation.ini",strCurrent);
GetPrivateProfileSection("navigation",strNavi,256,strFilePath);
但是我这样读取的话得到的却只是第一行的 12=2 我该怎么把所有的键名和键值都读取到呢。
CString aaaa;
aaaa.Format("%s",strNavi);
AfxMessageBox(aaaa);
我是这样测试知道值的。
[解决办法]
char strCurrent[256];
===>
char strCurrent[256] = {};
都这么处理一下。
[解决办法]
- C/C++ code
#define MAX_COUNT 256 TCHAR strCurrent[MAX_COUNT] = {0}; CString strFilePath(_T("")); TCHAR strNavi[MAX_COUNT] ={0}; strFilePath = GetCurrentDirectory(MAX_COUNT, strCurrent); //»ñµÃµ±Ç°Â·¾¶ strFilePath.Format(_T("%s\\navigation.ini"), strCurrent); DWORD dwSize = GetPrivateProfileSection(_T("navigation"),strNavi,MAX_COUNT,strFilePath); LPTSTR szText = strNavi; while(_T('\0') != *szText) { AfxMessageBox(szText); szText = _tcschr(szText, _T('\0')); szText++; }