Java nio : How to add extension to an absolute path?

标签 java path nio

这感觉应该是直截了当的事情,但我似乎可以找到一个优雅的解决方案,而无需转换为 File

给定一个路径

Path path = Paths.get("/a/b/foo")

如何获取路径/a/b/foo.barsubpath 将返回相对路径,无论原始路径是相对路径还是绝对路径。

我宁愿不必使用额外的库。但是,也许这是唯一的方法?

最佳答案

要更改 Path 的文件名,请使用 resolveSibling() 之一方法:

This is useful where a file name needs to be replaced with another file name.

使用此方法可确保结果 Path 对象针对相同的 FileSystem作为源 Path 对象。

因此,要将扩展名 ".bar" 添加到 Path:

path = path.resolveSibling(path.getFileName() + ".bar");

关于Java nio : How to add extension to an absolute path?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33273341/

相关文章:

java - 使用 Launch4j 从 .jar 编译为 .exe 时无法访问资源文件夹

node.js - 我可以在 Powershell 的 PATH 中包含相对于当前目录的文件夹吗?

java - Java路径如何转换为例如输入流

java - 通过适配器传递MainActivity的数据

java - Android Java如何制作单条形图

java - 如何在同一构建目录中的netbeans中设置文件路径?

java - 如何在java中使用SSL实现NIO?

Java NIO Selector最多只能选择50个SelectionKey?

java - 使用 gradle 构建错误 : Could not find or load main class,

java - 将数据从 fragment 发送到另一个 Activity 时不会调用 OnActivityResult