Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试在java中使用list()或listFiles()从目录获取文件_Java_User Interface_File - Fatal编程技术网

尝试在java中使用list()或listFiles()从目录获取文件

尝试在java中使用list()或listFiles()从目录获取文件,java,user-interface,file,Java,User Interface,File,我正在开发一个小的基本GUI程序,该程序从我的资源中获取文件,获取文件名并将它们放在组合框中。例如,我只是在同一个包中有一个名为images的文件,并试图获取文件名。获取文件的方法是使用getResource()如下 但是当我试图获取目录中的文件时 File urlfile = new File(url.toString()); String[] files = urlfile.list(); 第一行将url转换为字符串并创建一个文件对象,但是当我试图获取目录中的文件列表时,它会将字

我正在开发一个小的基本GUI程序,该程序从我的资源中获取文件,获取文件名并将它们放在组合框中。例如,我只是在同一个包中有一个名为images的文件,并试图获取文件名。获取文件的方法是使用getResource()如下

但是当我试图获取目录中的文件时

  File urlfile = new File(url.toString());

  String[] files = urlfile.list();
第一行将url转换为字符串并创建一个文件对象,但是当我试图获取目录中的文件列表时,它会将字符串数组返回null

我分解了代码并使用了netbeans发现的调试器,当它执行SecurityManager检查时,它不会通过

我的问题是项目中的文件是否受到保护,或者无法使用list()和listFiles()访问它们,或者我做错了什么?此外,我在学校的电脑上运行了与Windows7相同的脚本,上面的代码可以正常工作。但是当我在我的mac和2台win xp机器上运行它时,它就是不工作?为什么呢

我希望这是有意义的,我只是被困在这里,对java还是一个新手


提前感谢。

getResource(String)的类将向图像返回一个
URL
,但不能保证这是一个文件URL(以“file:”开头)。如果您的类嵌入到jar文件中,那么情况肯定不会如此,因此,为什么它在某些情况下失败,而在其他情况下失败

如果您的目的是让用户真正看到文件系统的一部分,那么我建议您完全避免使用getResource,当您的应用程序希望定位和加载图标或配置文件等资源时,它通常更有用

相反,您可以使用,这是一个丰富的Swing组件,用于导航文件系统和选择文件

  File urlfile = new File(url.toString());

  String[] files = urlfile.list();