fix:修复数据库链接错误打印至log文件中的乱码问题
This commit is contained in:
parent
c33ba6365f
commit
a06fe0f5a1
|
|
@ -108,6 +108,7 @@ bool DatabaseManager::connect(const QString& strConnectionName)
|
|||
db.setDatabaseName(config.strDBName);
|
||||
db.setUserName(config.strUserName);
|
||||
db.setPassword(config.strPassword);
|
||||
db.setConnectOptions("client_encoding=UTF8");
|
||||
|
||||
if(!db.open())
|
||||
{
|
||||
|
|
@ -115,7 +116,7 @@ bool DatabaseManager::connect(const QString& strConnectionName)
|
|||
LOG_ERROR("DB", QString("DB: %1 open failed. connectionName: %2. error: %3")
|
||||
.arg(config.strDBName)
|
||||
.arg(strConnectionName)
|
||||
.arg(QString::fromLocal8Bit(errorText.toLatin1())));
|
||||
.arg(errorText/*QString::fromUtf8(errorText.toUtf8())*/));
|
||||
emit errorOccurred(strConnectionName, QString::fromWCharArray(L"数据库打开失败,详情可见日志文件"));
|
||||
db.close();
|
||||
db = QSqlDatabase();//重置为无效数据库对象,在下面remove的时候就不会出现"connection '***' is still in use, all queries will cease to work"的警告
|
||||
|
|
|
|||
|
|
@ -101,6 +101,7 @@ void Logger::writeToFile(const QString& message)
|
|||
}
|
||||
//打开文件时先键入一个换行符
|
||||
QTextStream stream(&m_logFile);
|
||||
stream.setEncoding(QStringConverter::Utf8);//强制UTF-8编码
|
||||
stream << Qt::endl;
|
||||
stream.flush(); //刷新输出缓冲区,确保数据立即写入文件
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue