gpt4 book ai didi

java - 分配给稀疏文件的 block 数

转载 作者:行者123 更新时间:2023-12-04 06:08:10 26 4
gpt4 key购买 nike

有没有办法使用标准的 Java File API 访问分配给文件的块数?或者甚至使用一些不受支持和未记录的 API 来完成它。任何避免 native 代码插件的方法。

我说的是 st_blocks 领域结构统计 fstat/stat 系统调用在 Unix 上工作。

我想要做的是创建一个文件的稀疏副本,该副本现在具有大量冗余数据,即制作它的新副本,仅包含 Activity 数据但对其进行稀疏写入。然后使用原子重命名/链接操作交换两个文件。但是我需要一种方法来预先找出分配给文件的块数,它可能已经被稀疏地复制了。然后删除旧文件。

这将用于释放 100% Java 的数据库应用程序中的磁盘空间。依赖文件系统中的稀疏文件支持的好处是我不必更改指出数据所在位置的索引,这会增加手头任务的复杂性。

我认为通过依赖文件时间戳来查看文件是否已经被清理,我可以做得更好。但这引起了我的兴趣。我什至在 java 7 NIO.2 API 中找不到任何用于此级别文件属性访问的内容。

最佳答案

我能想到的唯一方法是使用 ls -s filename获取磁盘上文件的实际大小。 http://www.lrdev.com/lr/unix/sparsefile.html

关于java - 分配给稀疏文件的 block 数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8094914/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com