如何在java中获取文件物理地址

时间:2013-11-10 15:08:13

标签: java

我正在使用大量文件,我需要知道硬盘或闪存中的每个文件物理偏移量(地址)

谢谢亲爱的

2 个答案:

答案 0 :(得分:1)

文件没有一个物理偏移量。相反,它们由块组成(除非您的文件很小,在这种情况下有一个块)如果您是root用户,可以在Linux上读取原始文件系统,例如/dev/sd1c但是如何执行此操作取决于文件你有系统。

我建议你阅读你正在使用的文件系统的维基百科页面。

但是,您很可能不知道实际位置,虚拟位置就是您所需要的。要执行此操作,请使用FileInputStream / FileOutputStream / RandomAccessFile打开文件,并将内存映射到该文件。这会将文件映射到连续的虚拟内存中,您可以像访问内存一样访问文件的内容(如果您访问整个文件,它很可能会被缓存在内存中)

答案 1 :(得分:0)

Java无法做到这一点。这个问题太低了。您需要使用系统编程语言。