回复: QFramework开发构想,欢迎提意见
#46 [z_墨脱 06-07 08:57]
#47 回 topher 的帖子 [nigoole 06-08 14:06]
topher:
非常感谢,其实和我实际工作密切相关的是第一条和第三条
比如日志输出,我查了关于log4QT的很资料,发现功能不完善,不像log4j功能那么完善,
比如我需要每天输出一个文件,程序重启后,文件不会被重写,这些无法在配置文件中配置
大神有什么建议呢?
// 文件管理:只保留最近10天日志
void logFileManager() {
QString oldFile = Date::getBeforDays(10);
if (QFile::exists(oldFile)) {
QFile::remove(oldFile);
}
}
// 计算当前前面多少天的年月日
QString Date::getBeforDays(int nInterval)
{
int year= QDate::currentDate().year();
int month = QDate::currentDate().month();
int day = QDate::currentDate().day();
// 如果是本年1月前面几天,则退一年
if ((1 == month) && (day < nInterval)) {
year -= 1;
month = 12;
}
else if (day < nInterval) {
month--;
}
// 计算当月有多少天
int days = getMonthDays(year, month);
if (day < nInterval) {
day = days - (nInterval - day);
}
else {
day -= nInterval;
}
QString fileName = QString("%1/%2_Log_").arg(m_strLogPath).arg(m_strAppName);
fileName.append(QString("%1" ..
#48 [nigoole 06-08 14:08]
这样就能保证你系统的日志只会有10天的纪录!超过10天之前的每次写新文件的时候,都会去删除10天之前的!
if (fileName != logFileName) {
logFileName = fileName;
if (logFile->isOpen()) {
logFile->close();
}
logFile->setFileName(logFileName);
logFile->open(QIODevice::WriteOnly | QIODevice::Append | QFile::Text);
// 日志文件管理
logFileManager();
}
#49 [liuyuanan 06-09 09:06]
建议加入以下模块:网络通讯模块;二维码生成及解码模块;数据库访问模块(支持大部分常用数据库访问)。
#50 [liuyuanan 06-09 09:09]
建议还加上加解密模块,分对称式和非对称式加密