gpt4 book ai didi

java - 线程 "main"java.nio.file.InvalidPathException : UNC path is missing hostname:/\/中出现异常

转载 作者:行者123 更新时间:2023-12-02 11:25:40 24 4
gpt4 key购买 nike

我正在想办法解决我的问题。我正在使用 java.nio。当我在 Linux 环境中执行 Paths.get("/","/").toString() 时,它工作正常,因为它是基于 Linux 的路径。但是当我在Windows环境中执行它时,它给了我以下错误。

Exception in thread "main" java.nio.file.InvalidPathException: UNC path is missing hostname: /\/
at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:113)
at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
at sun.nio.fs.WindowsPath.parse(WindowsPath.java:94)
at sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:255)
at java.nio.file.Paths.get(Paths.java:84)

我知道这不是 Windows 中的有效路径系统。有什么方法可以让我同时在 Windows 和 Linux 上工作吗?

注意:我们的应用程序中有很多硬编码的正斜杠。

最佳答案

Paths.get("/","/") 毫无用处,所以我不知道你的真正用例是什么。但是,您应该永远不需要在代码中使用硬编码的文件分隔符。

假设你想获取文件系统的根目录,你可以做两件事:

  1. Paths.get(".").getRoot() 将返回 / 如果 $PWD=/home/blah
  2. FileSystems.getDefault().getRootDirectories()

如果您不需要根目录,Paths.get 将使用 File.separator 构造一个 Path

关于java - 线程 "main"java.nio.file.InvalidPathException : UNC path is missing hostname:/\/中出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49643139/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com