如何在目录中的服务器上列出文件名?

时间:2013-10-16 06:04:02

标签: java file web directory

我正在尝试获取某些服务器上tpo目录内的所有目录和文件的名称 当我运行以下代码时:

public static void main(String args[]) {
    try {
        File file = new File(new URI("http://xxx/tpo/"));
        String list[] = file.list();
        for(String name : list) {
            System.out.println(name);
        }
    }catch(Exception exc) {
        exc.printStackTrace();
     }
}

我得到以下异常:

java.lang.IllegalArgumentException: URI scheme is not "file"
at java.io.File.<init>(File.java:366)
at hack.List.main(List.java:17)

为什么?如何获取tpo目录中的文件名和目录名。

2 个答案:

答案 0 :(得分:2)

你做不到。网络服务器为您提供了一个html页面,其中包含一个文件列表,如果他愿意的话。如果他没有,那么你必须通过FTP登录到服务器。错误消息:

java.lang.IllegalArgumentException: URI scheme is not "file"

说到底出了什么问题。 java.io.File适用于本地硬盘/ USB设备上的脱机文件。

答案 1 :(得分:-1)

也许你得错了。你可能会尝试在远程服务器上返回一个包含文件名的列表。然后你可以对文件名做任何事情。

如:

return new File("xxx").listFiles();

然后你会收到清单,做任何你想做的事。