CFileFind//CFile——判定表格文件是否存在,不存在则创建表格文件并且加入表格表头

**

CFileFind和CFile的使用

**
本文章为,判定文件是否存在. 不存在则会创建指定目录的文件。
同时,文件创建是会写入表格的表头。

FindFile()查找指定目录是否存在并且返回

CString strFileNameCorrectData;
SYSTEMTIME sysLocaltime;
GetLocalTime(&sysLocaltime);
strFileNameCorrectData.Format(_T("D:\\SrcData_OK_NG\\%04i-%02i-%02i"), sysLocaltime.wYear
	, sysLocaltime.wMonth, sysLocaltime.wDay);

SHCreateDirectoryExW(NULL, strFileNameCorrectData, NULL);
strFileNameCorrectData += _T("\\data.csv");

int sign(0);
try
{
	CFileFind finder;
	BOOL bWorking = (bool)finder.FindFile(strFileNameCorrectData);//判断文件是否存在,存在返回true,不存在返回false
	if (!bWorking)
	{
		//AfxMessageBox(_T("目录不存在"));
		sign = 1;//标识文件.不存在,创建文件是会加入表头内容
	}

	CFile LPFile(strFileNameCorrectData, CFile::modeWrite | CFile::modeCreate | CFile::modeNoTruncate);

	LPFile.SeekToEnd();//到文件尾
	CStringA strbuf;
	if (sign == 1)
	{
		strbuf.Format("时间,");
		strbuf.AppendFormat("高度,");
		strbuf.AppendFormat("宽度,");
		strbuf += ",\r\n";
		strbuf.AppendFormat("%04i-%02i-%02i %02i:%02i:%02i,", sysLocaltime.wYear, sysLocaltime.wMonth
			, sysLocaltime.wDay, sysLocaltime.wHour, sysLocaltime.wMinute, sysLocaltime.wSecond);
	}
	else
	{
		strbuf.Format("%04i-%02i-%02i %02i:%02i:%02i,", sysLocaltime.wYear, sysLocaltime.wMonth
			, sysLocaltime.wDay, sysLocaltime.wHour, sysLocaltime.wMinute, sysLocaltime.wSecond);
	}
	strbuf.AppendFormat("%.04f,", set_value_w);//set_value_w为写入的内容
	strbuf.AppendFormat("%.04f,", value_www);// value_www为写入的内容

	strbuf += ",\r\n";
	LPFile.Write(strbuf.GetString(), strbuf.GetLength());//写入
	LPFile.Close();
	}
catch (CException* e)
{
	TCHAR   szCause[255];

	CString strFormatted;

	e->GetErrorMessage(szCause, 255);
}

猜你喜欢

转载自blog.csdn.net/qq_45780653/article/details/107179557
今日推荐