小弟我已通过ReadString逐行独取出来,如何通过CString类如何进行这个文本的拆分,只提取显示出来的数据,空格不要
我已通过ReadString逐行独取出来,怎么通过CString类怎么进行这个文本的拆分,只提取显示出来的数据,空格不要

例如第一行拆分出lp存放到数组中,hf存放到数组中,jd存放到数组中以此类推...
能否给出一个完整代码。
------解决方案--------------------
使用
if (3 != fscanf(fp, "%d %d %d", &b, &g, &r))
{ // Can't read pixel
res = DIB_LOAD_NOFILE_OR_CORRUPT;
goto cleanup;
}
------解决方案--------------------
CStringT::Tokenize
------解决方案--------------------
用函数AfxExtractSubString很方便 比如
------解决方案--------------------
CString::Tokenize()
void CMDYToPSGDlg::OnButton()
{
// TODO: Add your control notification handler code here
TCHAR szFilter[] = _T("Mdy文件(*.Mdy)|*.Mdy|");
CFileDialog fileDlg(TRUE, _T("Mdy"), NULL, 0, szFilter, this);
CString strFilePath;
// 显示打开文件对话框
if (IDOK == fileDlg.DoModal())
{
//如果点击了文件对话框上的“打开”按钮,则将选择的文件路径显示到编辑框里
strFilePath = fileDlg.GetPathName();
SetDlgItemText(IDC_File, strFilePath);
}
CStdioFile file(fileDlg.GetPathName(),CFile::modeReadWrite);
CString ss;
int i;
CString str;
CString strTemp;
i = 0;
while(file.ReadString(strTemp))
{
if (i > 5)
{
break;
}
str = strTemp ;
i++;
MessageBox(str);
}
file.Close();
}
例如第一行拆分出lp存放到数组中,hf存放到数组中,jd存放到数组中以此类推...
能否给出一个完整代码。
------解决方案--------------------
使用
if (3 != fscanf(fp, "%d %d %d", &b, &g, &r))
{ // Can't read pixel
res = DIB_LOAD_NOFILE_OR_CORRUPT;
goto cleanup;
}
------解决方案--------------------
CStringT::Tokenize
int iStart = 0;
while(1)
{
CString subItem = szLine.Tokenize(_T(" "), iStart);
if(subItem.IsEmpty())
break;
TRACE(_T("%s\n"), subItem);
}
------解决方案--------------------
用函数AfxExtractSubString很方便 比如
CString str = "123,-456(/t)7.89";
CString output = "";
则
AfxExtractSubString(output, str, 0, ','); //123
AfxExtractSubString(output, str, 1, ',); //-456
AfxExtractSubString(output, str, 2, '/t'); //7.89
------解决方案--------------------
CString::Tokenize()