2013-10-16 47 views
0

我试图让所有的目录名和文件的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

http://stackoverflow.com/questions/2843557/uri-scheme-is-not-file –

+0

http://stackoverflow.com/questions/7296052/error-java-lang-illegalargumentexception-uri-scheme-is - 不是文件 –

+0

你必须连接到使用FTP,SSH或类似的服务器。你不能只列出一个URL的文件。 – str

回答

2

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

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

说明究竟是什么错误。 java.io.File是为您的本地硬盘/ USB设备脱机文件。

+0

如果FTP服务器未运行,该怎么办?有可能是FTP服务器没有运行 –

+0

当然这是可能的。你是否拥有服务器?如果没有,你很可能无法做到你想做的事。 –

+0

不,我不拥有服务器。有什么方法可以检查FTP服务器是否在该服务器上运行? –

-1

也许你得到错误point.You可能会尝试返回一个列表,在远程server.Then包含文件名,你可以做的文件名什么。

如:

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

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

相关问题