- QString使用的是UTF-8编码
- 从字符常量中获取中文
QString msg = QString::fromLocal8Bit("This is a debug message at 中文");
- 以QString做为形参变量传递
qDebug(msg.toUtf8());
- QString与操作系统间读写,会自动将UTF-8与操作系统的编码做转换(比如日志系统)
void QtLog::WriteLine(const QString &logFileName, const QString &logMsg)
{
QFile file(logFileName);
file.open(QIODevice::WriteOnly | QIODevice::Append);
QTextStream text_stream(&file);
text_stream << logMsg << "\r\n";
file.flush();
file.close();
}
QString strAppDir = QCoreApplication::applicationDirPath(); // 不用转码
QString message, text, fileName = strAppDir + "/Log/";
QDir dir(fileName);
if (!dir.exists())
{
// 注:不能创建两级文件夹
bool ismkdir = dir.mkdir(fileName);
}