如何在Files.walkFileTree中检索Java NIO PosixFilePermission?

时间:2017-07-28 15:44:03

标签: java linux nio

在Unix上,Files.walkFileTree将使用FileVisitor.visitFile回调BasicFileAttributes,实际上是sun.nio.fs.UnixFileAttributes$UnixAsBasicFileAttributes。正如调试器所示,包装的UnixFileAttributes已包含权限信息(填充了st_mode字段)。是否有(优雅)方式解包 UnixFileAttributes$UnixAsBasicFileAttributes以获得至少PosixFileAttributes以便可以访问权限?反射对我不起作用,但在尝试调用IllegalAccessError时会产生UnixFileAttributes$UnixAsBasicFileAttributes.unwrap

另外,我想避免为每个报告的文件显式调用Files.getPosixFilePermissions(file),因为这会为我的测试用例提供大约10%的开销。

0 个答案:

没有答案