在Java中使用Windows 7显示特殊的隐藏文件/目录

时间:2010-12-13 22:23:20

标签: java file windows-7 hidden

从Windows 7开始,目录windows / system32 / drivers / etc被特别隐藏。 Windows 7本身并没有显示它,但如果我手动打开它就会存在。

今天我正在玩Java JFace Eclipse示例(http://www.ibm.com/developerworks/library/os-ecgui1/),并且想知道java也没有显示etc目录。

那么在使用file.listFiles()时如何获取所有目录/文件? 有什么想法吗?

2 个答案:

答案 0 :(得分:0)

File.listFiles()方法应在结果中包含正常的“隐藏”文件。如果没有,那是因为在操作系统级别发生了一些事情,要么从应用程序(而不仅仅是用户)隐藏文件。

我在java.io.File或Java 7 java.nio.*扩展程序中找不到任何提及访问“特别隐藏”文件的内容。

它可能是与权限相关的事情......如果是这样的话,那么解决方案就是以提升的权限执行Java应用程序。

但简单的解决方案是让您的应用程序远离Windows驱动程序目录树。

答案 1 :(得分:0)

正如我写的那样,我玩了一个JFace示例,它构建了一个基于Java的Windows资源管理器。 我同意你的看法,Java应用程序通常不应该在Windows驱动程序目录树中执行某些操作。 其他程序(如Total Commander)可以看到“特别隐藏”的文件,而不运行其他正常权限的程序。 我假设,Windows有一些API函数来获取该信息。 我只是对基于Java的解决方案感兴趣,它可以向我展示一切,就在我的磁盘上......