logger.cpp

来自「Convert Interface on a embedded System」· C++ 代码 · 共 56 行

CPP
56
字号
#include "StdAfx.h"
#include "Logger.h"

#include <Windows.h>
CLogger* CLogger::m_instance = NULL;

CLogger::CLogger(void)
{
	openFtpFile();
	openLogFile();
}

CLogger::~CLogger(void)
{
	m_ftpFile->Close();
	m_logFile->Close();
}

void CLogger::openFtpFile() 
{
	CDataFile dataFile(t_Str("C:\\root\\Configure.ini"));
	t_Str ftpName = dataFile.GetString("ftpfile", "Logging");

	m_ftpFile = new CFile(CString(ftpName.c_str()), CFile::modeCreate | CFile::modeNoTruncate | CFile::modeReadWrite);
}

void CLogger::openLogFile() 
{
	CDataFile dataFile(t_Str("C:\\root\\Configure.ini"));
	t_Str logName = dataFile.GetString("logfile", "Logging");

	m_logFile = new CFile(CString(logName.c_str()), CFile::modeCreate | CFile::modeNoTruncate | CFile::modeReadWrite);

	m_logLevel = dataFile.GetInt("level", "Logging");
}

void CLogger::LogFtp(CString message) 
{
	m_ftpFile->Write(message.GetBuffer(0), message.GetLength());
}

void CLogger::Log(int level, LPCTSTR message) 
{
	if(level >= m_logLevel) {
		m_logFile->Write(message, CString(message).GetLength());
	}
}

void CLogger::Log(int level, LPCTSTR message, int nErrorCode) 
{
	CString _message = CString(message) + CString(": %s");
	CString _m;
	_m.Format(_message, nErrorCode);
	Log(level, _m);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?