使用标准库将与基础操作系统无关的反斜杠分隔符连接路径

时间:2019-06-28 08:28:58

标签: go

filepath.Join允许使用基础操作系统的路径分隔符(在Windows上基本上为\,在其他任何地方为/)来连接路径。

无论实际运行的操作系统是什么,是否都有一种方法可以强制使用Windows路径分隔符\将路径与Go标准库连接起来?

1 个答案:

答案 0 :(得分:3)

否,不是与标准库的path/filepath软件包一起使用。您必须改用strings.Join()

如果您确实依靠filepath.Join()的“副作用”(例如,在必要时添加分隔符,调用Clean()等),那么最简单的方法是调用filepath.Join(),然后用反斜杠替换斜杠,例如使用strings.ReplaceAll()

请注意,全部替换方法之所以有效,是因为斜杠/是保留字符,除分隔文件夹和文件外,不能以其他名称显示。有关详细信息,请参见Naming Files, Paths, and Namespaces

请参阅相关的filepath.Join removes dot