将int文件大小转换为文件大小格式的字符串的最简单方法是:
2048 to 2 KB
4086 KB to 4 MB
Run Code Online (Sandbox Code Playgroud)
而不是在Qt5中手动计算?
Mar*_*k R 18
Qt 5.10引入了现成的解决方案:
QLocale locale = this->locale();
QString valueText = locale.formattedDataSize(sizeValue);
Run Code Online (Sandbox Code Playgroud)
dan*_*nca 16
QFileInfo没有特定于此的方法,但是在这里你可以找到一个简单的实现子类化QFileInfo并实现这个新方法
QString QFileInfoHumanSize::size_human()
{
float num = this->size();
QStringList list;
list << "KB" << "MB" << "GB" << "TB";
QStringListIterator i(list);
QString unit("bytes");
while(num >= 1024.0 && i.hasNext())
{
unit = i.next();
num /= 1024.0;
}
return QString().setNum(num,'f',2)+" "+unit;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5351 次 |
| 最近记录: |