我正在开发一个同时在Mac和Windows上开发的应用程序。我们正在生成一些文件路径,并希望生成的路径都是UNIX风格的正斜杠。在Windows机器上调用Paths.get(...)
会生成带有反斜杠的路径,但我希望它生成带有正斜杠的路径。
我找不到关于“设置”或指定要使用的路径分隔符的文档。
发布于 2019-01-09 15:52:10
一段时间前我也试图找到它,但这是不可能的。Paths.get(...)
中的静态方法
java.nio.file.FileSystems#getDefault
,它返回静态最终字段。
static final FileSystem defaultFileSystem = defaultFileSystem();
java.nio.file.FileSystems.DefaultFileSystemHolder#defaultFileSystem
会检测到您的文件系统。
但是在FileSystem
的实例中,斜杠的类型是硬编码的:https://github.com/frohoff/jdk8u-jdk/blob/master/src/windows/classes/sun/nio/fs/WindowsFileSystem.java#L249
所以我认为对你来说最简单的方法是使用像https://docs.oracle.com/javase/8/docs/api/java/util/StringJoiner.html这样的东西
https://stackoverflow.com/questions/54119555
复制相似问题