CFileDialog open_dlg(true,NULL , NULL , OFN_FILEMUSTEXIST | OFN_READONLY | OFN_PATHMUSTEXIST , TEXT("文本文件(*.txt)|*.txt|所有文件(*.*)|*.*|") , NULL);
if(open_dlg.DoModal() == IDOK){
filename = open_dlg.GetPathName();
UpdateData(FALSE);
}
AfxMessageBox(filename);
CStdioFile fileReader;
CFileException error;
if (!fileReader.Open(filename, CFile::modeRead, &error))
{
TCHAR szError[1024];
error.GetErrorMessage(szError, 1024);
CString strErr;
strErr.Format(_T("创建匹配列表文件 match_list.txt 失败!"));
AfxMessageBox(strErr);
return;
}
double **s;
s=(double **)malloc(100*sizeof(double *)); //s为存放txt文件数据数组for(int i=0;i<15;i++)
s[i]=(double *)malloc(sizeof(*s));
int i=0;
CString strLine,strtemp;
while(fileReader.ReadString(strLine))
{
/*USES_CONVERSION;*/
char *str = strLine.GetBufferSetLength(strLine.GetLength());
char *p;
int j=0;
if(strLine!="")
{
for (p=strtok(str," ");p!=NULL;p=strtok(NULL," "))
{
strtemp = p;
s[i][j]=atof(strtemp);
j++;
}
}
i++;
}
读取TXT文件到二维数组
本文介绍了一个使用C++实现的从TXT文件中读取数据到二维数组的方法。通过CFileDialog对话框让用户选择文件,然后利用CStdioFile进行文件读取。每行数据被解析并存储为double类型的数组。
4112

被折叠的 条评论
为什么被折叠?



