如何添加cfile类
2个回答
展开全部
// 获取数据
void CDataDlg::GetData(LPCTSTR lpszFileName)
{
CFile m_file; // 此处建议使用CStdioFile,可以一行行的读入
if (m_file.Open(lpszFileName, CFile::modeRead | CFile::typeBinary))
{
int nLen = m_file.GetLength();
m_file.SeekToBegin(); // 文件指针定位
CString szContent;
szContent.GetBufferSetLength(nLen); // 开辟存储空间
m_file.Read(szContent.GetBuffer(nLen), nLen); // 读取数据
szContent.ReleaseBuffer(); /颤陆/ 释放多余空间
m_file.Close();
szContent.Replace(_T("\r\n"), _T("\t")); // 统一数据格式
szContent.Replace(_T(" "), _T("\t"));
int nPos = 0;
while (nPos != -1)
{
szContent.TrimLeft(_T("\t")); // 去除最左边的氏洞雹制表符
nPos = szContent.Find('\t');
if (nPos != -1)
{
double val = ::atof(szContent.Left(nPos)); // 此处循环获取每一个浮点数
CString str;
str.Format(_T("%lf"), val);
::AfxMessageBox(str);
// 此处歼帆添加其他处理代码即可
}
szContent.Delete(0, nPos);
}
}
}
void CDataDlg::GetData(LPCTSTR lpszFileName)
{
CFile m_file; // 此处建议使用CStdioFile,可以一行行的读入
if (m_file.Open(lpszFileName, CFile::modeRead | CFile::typeBinary))
{
int nLen = m_file.GetLength();
m_file.SeekToBegin(); // 文件指针定位
CString szContent;
szContent.GetBufferSetLength(nLen); // 开辟存储空间
m_file.Read(szContent.GetBuffer(nLen), nLen); // 读取数据
szContent.ReleaseBuffer(); /颤陆/ 释放多余空间
m_file.Close();
szContent.Replace(_T("\r\n"), _T("\t")); // 统一数据格式
szContent.Replace(_T(" "), _T("\t"));
int nPos = 0;
while (nPos != -1)
{
szContent.TrimLeft(_T("\t")); // 去除最左边的氏洞雹制表符
nPos = szContent.Find('\t');
if (nPos != -1)
{
double val = ::atof(szContent.Left(nPos)); // 此处循环获取每一个浮点数
CString str;
str.Format(_T("%lf"), val);
::AfxMessageBox(str);
// 此处歼帆添加其他处理代码即可
}
szContent.Delete(0, nPos);
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询