【问题标题】:File Size in File.length different from Windows explorerFile.length 中的文件大小与 Windows 资源管理器不同
【发布时间】:2015-03-05 18:24:39
【问题描述】:

我使用File(outputFilePath).length() 来获取文件的大小。但 Windows 资源管理器告诉我它稍大一些,即 144835 对 151,412 字节。这是令人惊讶的还是意料之中的?

【问题讨论】:

  • 磁盘大小或大小?
  • Sotirios,尺寸。磁盘大小为 151,552 字节。
  • 所以操作系统在磁盘上分配了 151552 个字节来存储文件,但实际上只需要 144835 个。

标签: java windows file


【解决方案1】:

不同之处在于 Windows 可以处理通常为 4Kb 即 4096 字节的块中的磁盘。这是操作系统可以单独处理的磁盘空间的最小部分。因此,当文件没有填满整个块时,磁盘空间会被浪费,即使实际文件大小更小,它仍然会占用已分配块的磁盘空间 - 在您的情况下,它使用了 37 个 4Kb 块。您可以更改块大小,但必须格式化磁盘才能做到这一点。 Java File.length() 返回实际大小(以字节为单位)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-05
    • 1970-01-01
    • 2010-12-30
    • 2016-12-11
    • 2019-06-08
    • 2015-09-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多