如果我有一个包含很多零的大文件,我怎样才能有效地使它成为一个稀疏的文件?
是唯一的可能性来读取整个文件(包括所有的零,可能patrially存储稀疏),并重写到一个新的文件使用寻求跳过零区?
或者是否有可能在现有的文件(例如file.setSparse(长开始,长结束))?
我正在寻找一个Java或一些linux命令的解决scheme,filesystem将是ext3或类似的。
如何以编程方式设置文件的修改时间?
path内文件夹内的文件内部的小写字母
最佳的锁文件方法
如何更改Visual Studio 2012(C ++)中的默认.exe图标
从ColdFusion访问映射的networking驱动器
如何打开已经在独占模式下打开的文件?
Python在写完之前会打开一个文件吗?
文件耐久性设置
我正在寻找批处理脚本,将多个文本文件的名称追加到每个文件的第一行
使用PHP写入目录:这是一个权限问题?
linux / UNIX上的某些文件系统有能力在现有文件中“打洞”。 看到:
LKML发布有关该功能
UNIX文件分解FAQ (搜索F_FREESP)
这不是很便携,并没有在全面的方式做同样的方式; 截至目前,我相信Java的IO库不提供这个接口。
如果可以通过fcntl(F_FREESP)或通过任何其他机制来打孔,则应该比复制/查找循环快得多。
我想你最好预先分配整个文件,并维护占用的页面/部分的表/位置。
如果文件稀疏,会导致这些部分被重复使用。 也许保存几TB的磁盘空间是不值得高度分散的文件的性能打击。
根据这篇文章 ,似乎目前还没有简单的解决方案,除了使用FIEMAP ioctl。 但是,我不知道如何将“非稀疏”零块变成“稀疏”块。
你可以在linux终端上使用$ truncate -s filename filesize创建稀疏文件
只有元数据。
注 – 文件大小以字节为单位。
总结以上是内存溢出为你收集整理的如何使文件稀疏?全部内容,希望文章能够帮你解决如何使文件稀疏?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)