使用其他类型,我可以轻松地执行类似的操作
mitm.created().toString("yyyy-MM-dd")
有类似的功能可以将qint64转换为QString吗?您可以在下面找到代码。
fileArray.append("[");
foreach(QFileInfo mitm, mDir.entryInfoList(QDir::Files)){
fileArray.append("{\"filePath\": \"");
fileArray.append(mitm.absoluteFilePath());
fileArray.append("\",");
fileArray.append("\"fileCreated\": \"");
fileArray.append(mitm.created().toString("yyyy-MM-dd"));
fileArray.append("',");
fileArray.append("'fileSize': '");
// fileArray.append(mitm.size());
fileArray.append("\"}");
if(fileCount!=mDir.entryInfoList(QDir::Files).count()-1){ fileArray.append(","); }
fileCount++;
}
fileArray.append("]");
我已经注释掉了破坏代码的行。我在日期上遇到了同样的问题,但使用toString进行了转换。我希望qint64会有类似的解决方案。
最佳答案
您将需要为此编写以下代码:
fileArray.append("[");
foreach(QFileInfo mitm, mDir.entryInfoList(QDir::Files)){
fileArray.append("{\"filePath\": \"");
fileArray.append(mitm.absoluteFilePath());
fileArray.append("\",");
fileArray.append("\"fileCreated\": \"");
fileArray.append(mitm.created().toString("yyyy-MM-dd"));
fileArray.append("',");
fileArray.append("'fileSize': '");
fileArray.append(QString::number(mitm.size()));
fileArray.append("\"}");
if(fileCount!=mDir.entryInfoList(QDir::Files).count()-1){ fileArray.append(","); }
fileCount++;
}
fileArray.append("]");
有关详细信息,请参见
QString::number(...)
静态方法的文档(从here开始)。您将需要匹配qint64的变体,它是qlonglong替代。关于c++ - 将qint64转换为QString,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18992654/