2011-12-12 43 views
6

如何列出特定IP地址下的所有可用共享文件夹?IP下的共享

模拟代码:

IP ip = new IP("10.0.0.9"); 

for(File share : ip.getSharedFolders){ 
    System.out.println(share.getName()); 
} 

是否有在此可以实现的方法吗?

我想做类似于Windows网络浏览器的东西,我需要获得特定IP下的所有共享文件夹,所以我可以生成一棵树。

Network explorer

与第一种级别的共享文件夹,我可以从easely开箱拿到较低水平这样

for(File f : new File("//10.0.0.9/d").listFiles()){ 
        System.out.println(f.getName()); 
+0

“共享文件夹” - 如何共享 –

+1

新文件(“// 10.0.0.9/d/movies”)Samba共享,网络位置 – ex0b1t

回答

2

Java不支持你正在尝试做的。 您需要使用库如JCIFS来做到这一点。

一个简单的方法就是确保你有一个驱动器映射(如果Windows或nfs/smb安装其他操作系统)到该位置,然后将其视为本地文件 - 使用java.io API。

0

如果文件是通过服务器IP地址访问(网络明智和权限明智的),那么相信你可以做全部列出来递归如下:

  1. 获取远程文件夹名称。例如"//10.0.0.9/folder"
  2. 迭代通过该文件夹,就像你会做列出文件在本地目录(见链接了解更多有关在本地目录列表本地文件