写日志函数

 
 
BOOL SaveLog(const char *pszFmt, ...)
{
	// 获取日志内容
	char pszMsg[1024] = {0};
	va_list ptr; 
	va_start(ptr, pszFmt);
	vsprintf(pszMsg, pszFmt, ptr); 
	va_end(ptr);
	
	// 日志文件路径
	std::string strRet;
	char buff[256] = {0};
	GetModuleFileName(NULL, buff, 256);
	strRet = buff;
	strRet = strRet.substr(0, strRet.rfind('\\'));
	std::string strFile = strRet + "\\Log.txt";
	
	// 加入时间
	CTime tmCurr = CTime::GetCurrentTime();
	std::string strLog(tmCurr.Format("%Y-%m-%d %H:%M:%S") + "----");
	strLog += pszMsg;
	strLog += "\n\n";

	// 写入可执行目录下的日志文件中。
	FILE *pFile = fopen(strFile.c_str(), "a+");
	if (NULL != pFile)
	{
		fwrite(strLog.c_str(), 1, strLog.size(), pFile);
		fclose(pFile);
		return TRUE;
	}
	return FALSE;
}


你可能感兴趣的:(写日志函数)