使用Paths.get可实现跨平台路径构建,通过分段传入目录名,系统自动适配分隔符;结合System.getProperty获取用户主目录或临时目录,支持相对与绝对路径写法,避免硬编码斜杠,确保兼容性。

在Java中使用 Paths.get 构建跨平台路径,关键在于避免硬编码路径分隔符(如 / 或 \),让系统自动选择合适的分隔方式。Java 7 引入的 java.nio.file.Paths 类能根据运行环境自动适配不同操作系统的路径格式。
使用 Paths.get 拼接路径片段
Paths.get 接收多个字符串参数,每个参数代表路径的一级目录或文件名,它会自动用当前系统的分隔符连接这些部分。
例如:
- Paths.get("folder", "subfolder", "file.txt")
在 Windows 上生成:folder\subfolder\file.txt
在 Linux/macOS 上生成:folder/subfolder/file.txt
基于用户主目录或临时目录构建路径
结合 System.getProperty 获取标准路径前缀,再用 Paths.get 拼接,可进一步提升兼容性。
立即学习“Java免费学习笔记(深入)”;
Destoon B2B网站管理系统是一套完善的B2B(电子商务)行业门户解决方案。系统基于PHP+MySQL开发,采用B/S架构,模板与程序分离,源码开放。模型化的开发思路,可扩展或删除任何功能;创新的缓存技术与数据库设计,可负载千万级别数据容量及访问。 系统特性1、跨平台。支持Linux/Unix/Windows服务器,支持Apache/IIS/Zeus等2、跨浏览器。基于最新Web标准构建,在
常见用法:
- 用户主目录:Paths.get(System.getProperty("user.home"), "myapp", "config.json")
- 临时目录:Paths.get(System.getProperty("java.io.tmpdir"), "temp-file.tmp")
处理相对与绝对路径
Paths.get 也能识别以根路径开头的写法,比如从盘符或根目录开始:
- Windows 绝对路径:Paths.get("C:", "Users", "name", "data.txt")
- Unix-like 绝对路径:Paths.get("/", "home", "user", "data.txt")
这样的写法依然能保证各平台正确解析。
基本上就这些。只要不直接写死斜杠,用 Paths.get 分段传参,就能写出真正跨平台的路径逻辑。









