直接调用 system.getproperty("file.separator") 可获取系统路径分隔符:windows 返回 "",linux/macos 返回 "/";推荐用 file.separator 或 paths.get() 替代硬编码斜杠,uri/url 中须统一用 "/"。

直接调用 System.getProperty("file.separator") 即可获取当前操作系统的路径分隔符。
file.separator 的作用和返回值
该属性表示操作系统用于分隔文件路径组件的字符:
• Windows 返回 "\"(反斜杠)
• Linux/macOS 返回 "/"(正斜杠)
它与 path.separator(用于分隔多个路径,如 classpath 中的路径)不同,不要混淆。
正确使用方式
推荐在拼接路径时使用它,避免硬编码斜杠:
- 用
System.getProperty("file.separator")替代"/"或"\" - 更现代、更安全的方式是用
java.nio.file.Paths.get()或File.separator常量(本质也是读取同一系统属性) - 例如:
String path = "home" + File.separator + "user" + File.separator + "data";
注意事项
这个属性由 JVM 启动时根据宿主操作系统自动设置,运行时不可修改;
不建议在字符串拼接中频繁调用 System.getProperty("file.separator"),可提前缓存为常量或直接用 File.separator;
如果用于构建 URI 或 URL,应统一用正斜杠 "/",因为 URI 规范要求使用正斜杠,与操作系统无关。
替代方案推荐
优先使用标准 API 而非手动拼接:
-
Paths.get("home", "user", "data").toString()—— 自动适配分隔符 new File("home", "user").resolve("data").getPath()-
File.separator是静态 final 字符串,本质等价于System.getProperty("file.separator"),但更简洁
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











