【问题标题】:Get file size during generate in QT [closed]在 QT 中生成期间获取文件大小 [关闭]
【发布时间】:2015-01-23 14:32:18
【问题描述】:

我需要在生成文件时获取文件大小。

我尝试过使用 QThread 和 QFileInfo::size 和带有标志的 while,该标志表示文件何时完成,但值永远不会改变。

所以想知道您是否可以在生成文件时获取文件大小。

【问题讨论】:

  • 请提供更多详细信息。文件是如何生成的或是谁生成的?您的应用程序或系统上的任何进程?另外,如果您尝试通过任何应用程序查看任何文件,那么不要忘记文件大小可能有些不可靠,因为应用程序可能已经写入了仍然缓存在某处并且尚未到达实际文件的内容系统还没有。

标签: qt filesize qthread qfileinfo


【解决方案1】:

来自Qt docs:

注意:为了提高性能,QFileInfo 缓存了有关文件的信息。因为文件可以被其他用户或程序更改,甚至可以被同一程序的其他部分更改,所以有一个刷新文件信息的函数:refresh()。如果您想关闭 QFileInfo 的缓存并在每次向它请求信息时强制它访问文件系统,请调用 setCaching(false)。

所以在(重新)检查文件大小之前尝试QFileInfo::refresh() 函数。

【讨论】:

  • 效果完全符合预期,谢谢 TWE。
猜你喜欢
  • 2013-08-10
  • 1970-01-01
  • 2015-03-23
  • 1970-01-01
  • 1970-01-01
  • 2013-05-22
  • 2021-07-04
  • 1970-01-01
  • 2016-09-04
相关资源
最近更新 更多