我想做这样的事情:
文件root = new File(“C:/file.txt”);
但在本地网络上共享的文件夹上。那么让我们说文件是在192.168.1.28如何使用上面的命令?
接下来没有工作:
File root = new File("//192.168.1.2/file.txt");
File root = new File("\\\\192.168.1.2/file.txt");
File root = new File("\\192.168.1.2/file.txt");
File root = new File("file:\\192.168.1.2/file.txt");
File root = new File("file://192.168.1.2/file.txt");
非常感谢。
答案 0 :(得分:1)
我认为这是可能的。但是,您需要先使用Samba安装共享 - 此处有更多信息 - java read file from network device
希望有所帮助
答案 1 :(得分:1)
您可以使用Apache Commons VFS。它是一个库,允许您操作各种文件系统上的文件,其中一个非常适合您的需要是CIFS文件系统:
提供对CIFS服务器上文件的访问,例如Samba服务器, 或Windows共享。
URI格式
smb:// [username [:password] @] hostname [:port] [absolute-path]
实施例
smb://somehost/home
CIFS文件系统的提供程序仍在开发中,但您可以尝试一下。 我已经使用该库通过http和ftp协议提供对文件的透明访问。
答案 2 :(得分:0)
单独的Java不支持网络文件共享,因为您提供的代码正在尝试这样做。
但是如果您使用像Samba这样的库,那么就可以。但它会与你展示的代码不同。
答案 3 :(得分:0)
Java只是不支持网络文件共享
答案 4 :(得分:0)
使用Java 1.8,您可以使用Java访问共享位置上的文件。假设您要在共享位置访问名为(Sample.xls)的.xls文件。
String location = "\\\your.shared.location.company.com\\folder1\\folder2\\";
String fileName = "Sample.xls";
FileInputStream fis = new FileInputStream(location + fileName);