如何使用Java访问Windows挂载的驱动器?

问题描述 投票:2回答:1

我家里有一台WD My Cloud。我可以通过输入Z:\path\to\image.jpg从文件资源管理器中使用我的笔记本电脑访问它。

我正在编写一个Java程序来读取位于这个小云上的图像内容。

这是我的代码:

Path p =Paths.get("\\\\192.168.1.2\\z$\\path\\to\\image.jpg");

try {
    byte[] data = Files.readAllBytes(p);

    // Process data here...
} catch (IOException e) {
    // ...
}

该程序因以下异常而失败:

java.nio.file.FileSystemException:\\ 192.168.1.2 \ z $ \ path \ to \ image.jpg:找不到网络名称。

“找不到网络名称”:“找不到网络名称”

我试过其他路径却没有成功:

  • \\本地主机\ Z $ \路径\为\ image.jpg的
  • \\ 127.0.0.1 \ Z $ \路径\为\ image.jpg的
  • \\ MyPcName-PC \ Z $ \路径\为\ image.jpg的
  • Z:/path/to/image.jpg

我错过了什么?

Windows 10 Java 8

java windows path unc
1个回答
0
投票

在Paths.get参数中格式化字符串,如下所示。

package access.mounted.drive;

import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.Files;
import java.io.IOException;

/**
 * @author Charles
 */
public class AccessMountedDrive {

    public static void main(String[] args) {
        Path p =
        Paths.get("E:\\\\Photos Grandparents\\Scan0166a Rose Pincoffs.jpg");

        try {
            int i=0;
            byte[] data = Files.readAllBytes(p);
            System.out.println("File size in bytes:" + data.length);
            // Process data here...
        } catch (IOException e) {
            System.out.println("IOException: " + e);
        }
    }

}
© www.soinside.com 2019 - 2024. All rights reserved.