16,472
社区成员
发帖
与我相关
我的任务
分享
CString strSection = "My Section";
CString strStringItem = "My String Item";
CString strIntItem = "My Int Item";
CWinApp* pApp = AfxGetApp();
pApp->WriteProfileString(strSection, strStringItem, "test");
CString strValue;
strValue = pApp->GetProfileString(strSection, strStringItem);
ASSERT(strValue == "test");
while(dwCount == dwSize - 2)
{
delete szBuffer;
dwSize = dwSize * 2;
szBuffer = new TCHAR[dwSize];
dwCount = GetPrivateProfileSection(_T("SN_PN"), szBuffer, dwSize, _T("D:\\LIST.ini"));
}
这里改一下CString FindData(LPCTSTR s)
{
DWORD dwSize = 1024;
LPTSTR szBuffer = new TCHAR[dwSize];
DWORD dwCount = GetPrivateProfileSection(_T("SN_PN"), szBuffer, dwSize, _T("D:\\LIST.ini"));
if(dwCount == 0)
return _T("");
// memory not enough
while(dwCount == dwSize - 2)
{
delete szBuffer;
dwSize = dwSize * 2;
szBuffer = new TCHAR[dwSize];
DWORD dwCount = GetPrivateProfileSection(_T("SN_PN"), szBuffer, dwSize, _T("D:\\LIST.ini"));
}
int nPos = 0;
CString szKV = szBuffer;
CString szKey, szValue, szRet;
while(!szKV.IsEmpty())
{
TRACE(szKV);
int nIndex = szKV.Find(_T("="));
if(nIndex != -1)
{
szKey = szKV.Left(nIndex);
szValue = szKV.Mid(nIndex + 1);
if(s == szKey)
{
szRet = szValue;
break;
}
}
nPos += szKV.GetLength() + 1;
szKV = szBuffer + nPos;
}
delete szBuffer;
return szRet;
}
CString szFind = FindData(_T("UZ5565P12C07"));
TRACE(szFind);
不谢