全部,原谅我,我不熟悉Linux.我试图读取位于Windows或Linux系统中的网络共享文件夹的所有文件.
目前我只是通过以下代码使其适用于Windows的情况.
networkShareFolder="\\\\10.50.90.18\\ITS Tool\\xml\\";//It is a windows Network share path.
File[] files = new File(networkShareFolder).listFiles();
Run Code Online (Sandbox Code Playgroud)
但是当我将我的应用程序部署到Linux系统并运行它时.它只是告诉我无法从指定的文件中获取任何文件networkShareFolder;
所以我尝试\\10.50.90.18在Linux的File explorer中输入路径,就像我在windows中所做的那样.查看是否可以从Linux系统访问该路径.但它只是告诉我Can't locate the \\10.50.90.18.但我确信IP可以从Linux ping.
所以我的问题是
\\10.50.90.18无法在Linux中访问.但可以在Windows中访问.(我相信他们的IP都是10.50.90.*)谢谢.
Ell*_*sch 12
可以使用FUSE和samba安装远程文件系统(通常包括SMB/CIFS).这可能看起来像(假设你有一个挂载点/windows)
# export USER=efrisch
# export WORKGRP=mygrp
# smbmount //10.50.90.18/ /windows –o username=$USER,workgroup=$WORKGRP
Run Code Online (Sandbox Code Playgroud)
然后你可以用(透明地)访问你的目录
new File("/windows/ITS Tool/xml")
Run Code Online (Sandbox Code Playgroud)
JCIFS提供SmbFile并提供listFiles()类似的东西
SmbFile[] files = new SmbFile("smb://10.50.90.18/ITS Tool/xml/").listFiles();
Run Code Online (Sandbox Code Playgroud)
链接文档SmbFile确实给出了完整的格式
SMB://?[[[域]用户名[:密码] @]服务器[:端口]/[[份额/ [DIR /]文件]]] [PARAM =值[参数2 = 2 [...]] ]
它还指出,代表工作组,服务器,共享或目录的所有SMB URL都需要一个斜杠"/".
| 归档时间: |
|
| 查看次数: |
10927 次 |
| 最近记录: |