在最新版本的Windows中,您可以点击开始菜单并开始输入以搜索文件系统中的文件。有没有办法用Java编程?
我的具体目的是允许用户选择文件或目录。用户可以直接在应用程序内部开始键入文件名,并且可以开始显示建议。比在典型的文件选择器中导航目录容易得多。
答案 0 :(得分:1)
您在问题的第二部分要求的内容可以通过简单的方式完成:
File dir = new File( "/path/to/dir" );
String[] contents = dir.listFiles();
第一部分有点难,但可以使用递归调用的相同技术在内部 Java中完成。 (for(String fl: contents){ /* do the above */ })
您不必担心在此处支持命令行调用的包装器。这是反平台独立的。
答案 1 :(得分:1)
您可以编写JNI代码来包装+公开任何Windows本机功能。
如果它仅用于文件对话框中的自动完成样式行为,则不需要包装本机功能,您只需使用java.io中的标准内容即可。
答案 2 :(得分:1)
本文通过访问本机功能详细介绍了在Windows中执行此操作的方法:
Query Windows Search from Java
这个详细介绍了如何在Mac OS下执行类似的操作(使用mdfind
):
http://lists.apple.com/archives/Java-dev/2006/Oct/msg00224.html
答案 3 :(得分:0)
听起来不太可能成为Java的一部分,因为Java应该是独立于平台的。此类搜索应该要求对所有文件进行某种索引,以提高效率。