본문 바로가기
MFC

[MFC] Log 생성.

by Jcoder 2023. 1. 12.

#include <fstream>
#include <Shlwapi.h> // for PathIsDirectory()
#include <iomanip> // for std::put_time
#include <ctime>   // for std::time_t and std::tm
#include <sstream>

CString logfileDirectory = CurPath + "\\log";

if (!PathIsDirectory(logfileDirectory)) {
    CreateDirectory(logfileDirectory, NULL);
}

// get current date and time
std::time_t now = std::time(nullptr);
std::tm now_tm = *std::localtime(&now);
std::stringstream ss1, ss2;
ss1 << std::put_time(&now_tm, "%Y%m%d");
ss2 << std::put_time(&now_tm, "[%Y-%m-%d %X] - ");

CString logfileName = logfileDirectory + "\\" + ss1.str().c_str() + ".log";
std::ofstream outFile(logfileName, std::ios::app);

logText = ss2.str().c_str() + logText;

outFile << logText << std::endl;
outFile.close();

 

현재 실행중인 프로그램 경로에 log 폴더 생성 후 현재 날짜.log 파일 생성.

내용은 [2023-01-12 12:12:30] - 로그 내용.