主文件
#include "SimpleLog.h"
using namespace std;
static void writeFile();
void log();
int main()
{
std::cout << "Hello World!\n";
SimpleLog log;
log.Write("test2");
double db = 10.05;
log.Write("dobule:", db);
}
SimpleLog.h
#pragma once
#include<ctime>
#include <string>
#include <string>
#include <fstream>
using namespace std;
class SimpleLog
{
private:
tm mPCreateFileTime;
ofstream mOutfile;
void CreateFile();
void CheckCreate();
public:
SimpleLog();
~SimpleLog();
void Write(string log);
void Write(string log, double value);
};
SimpleLog.cpp
#include "SimpleLog.h"
#include<string.h>
//#include <sstream>std::stringstream ss;
#include <sstream>;
SimpleLog::SimpleLog()
{
time_t now = time(0);
localtime_s(&mPCreateFileTime, &now);
CreateFile();
}
SimpleLog::~SimpleLog()
{
mOutfile.close();
}
void SimpleLog::Write(string log)
{
CheckCreate();
mOutfile << log << endl;
}
void SimpleLog::Write(string log , double value)
{
CheckCreate();
ostringstream stream;
stream << value;
string str = stream.str();
mOutfile << log<< str << endl;
}
void SimpleLog::CreateFile()
{
char* date = new char[20];
strftime(date, 20, "%F", &mPCreateFileTime);
string fileName = date;
mOutfile.open("logs/" + fileName + ".txt", ios::app);
}
void SimpleLog::CheckCreate()
{
time_t now = time(0);
tm newTm;
localtime_s(&newTm, &now);
if (mPCreateFileTime.tm_year != newTm.tm_year) {
return;
}
if (mPCreateFileTime.tm_mon != newTm.tm_year) {
return;
}
if (mPCreateFileTime.tm_mday != newTm.tm_year) {
return;
}
}