티스토리 뷰
m_LogDeleteTime = GetTickCount();
m_LogMinute = 0;
void LogDeleteMonth()
{
if(CheckTimeOver(60000, m_LogDeleteTime)) {
m_LogDeleteTime = GetTickCount();
m_LogMinute ++; // 1분을 기억
}
// 60분 * 24시간 = 1440분
// 하루에 한번씩 로그 삭제
if(m_LogMinute >= 1440) {
QDateTime Now = QDateTime::currentDateTime();
QDateTime Before = Now.addDays(-30); // 한달전 날짜 구하기
QDirIterator FileList("/폴더 경로/", QDir::Files);
char BeforeLogName[50];
memset(BeforeLogName, 0, sizeof(BeforeLogName));
sprintf(BeforeLogName, "/폴더 경로/%-6.6s.log", Before.toString("yyMMdd").toStdString().c_str());
g_Log.LogWrite((char *)"BeforeOneMonth : %s", BeforeLogName);
while(FileList.hasNext()) {
QString FileName = FileList.next();
// 한달 전 로그파일 이름이 보다 작은 파일들은 삭제한다.
if(strcmp(BeforeLogName, FileName.toStdString().c_str()) > 0) {
QFile::remove(FileName);
g_Log.LogQString(FileName + " Delete.");
}
}
m_LogMinute = 0; // 초기화
}
}
'프로그래밍 > Qt' 카테고리의 다른 글
버튼 롤오버기능 + png (0) | 2019.06.11 |
---|---|
투명 버튼 (0) | 2019.06.11 |
리눅스 Qt에서 utf-8 -> eucKR 변환 (0) | 2019.06.11 |
QSerialPort (0) | 2019.06.11 |
QTcpSocket isConnected (0) | 2019.06.11 |
- Total
- Today
- Yesterday