mr_*_*wan 7 java smb android jcifs
我在我的新Android项目中使用JCIFS.不知何故,我决定使用URL类来推广文件路径(所以我可以稍后添加更多协议).我的所作所为如下
URL url = new URL("smb://192.168.1.1/filepath");
Run Code Online (Sandbox Code Playgroud)
然后抛出java.net.MalformedURLException异常.
Exception in thread "main" java.net.MalformedURLException: unknown protocol: smb
at java.net.URL.<init>(URL.java:184)
at java.net.URL.<init>(URL.java:127)
Run Code Online (Sandbox Code Playgroud)
咨询JCIFS常见问题解答表明我必须在使用该课程之前注册协议.但是我真的不知道如何在Android中这样做.我认为图书馆已经这样做了,但它不适用于Android.
所以我该怎么做 ?
我刚刚在SmbFile参考中看到了JCIFS引用中的用法.
当使用带有'smb://'URL的java.net.URL类时,首先需要调用静态jcifs.Config.registerSmbURLHandler(); 方法.这是注册SMB协议处理程序所必需的.
所以我添加了这个调用,它正常工作.
不要使用 URL 对象。将 URL 直接传递到 SmbFile 构造函数中。例如:
SmbFile file = new SmbFile("smb://192.168.1.1/filepath");
Run Code Online (Sandbox Code Playgroud)
然后您就可以完成使用常规文件可以完成的大部分操作。
| 归档时间: |
|
| 查看次数: |
8618 次 |
| 最近记录: |