加入路径时如何添加尾部斜杠
How to add a trailing slash when joining paths
我正在制作一个网络应用程序,我正在尝试编写 views/layouts/*.html
使用两个变量,但 filepath.Join 只给出 views/layouts
而不是 views/layouts/
var (
LayoutDir string = filepath.Join("views","layouts")
TemplateExt string = "*.html"
)
然后调用
f, err:= filepath.Glob(LayoutDir + TemplateExt)
因此 f 包含 views/layouts*.html
而不是 views/layouts/*.html
我应该如何解决这个问题?在这种情况下使用 filepath.Join 是一个好习惯吗?
f, err:= filepath.Glob(filepath.Join(LayoutDir, TemplateExt))
应该可以解决问题
或
LayoutDir string = filepath.Join("views", "layouts") + string(filepath.Separator)
或
LayoutDir string = filepath.Join("views", "layouts") + string(os.PathSeparator)
我没有足够的代表发表评论 - 也许 mod 会将我的 'answer' 移至评论。需要注意的一件事是此代码将在 windows 台机器上生成 views/layouts\
...我只使用 /
而不是 filepath.Separator 或 os.PathSeparator。
我正在制作一个网络应用程序,我正在尝试编写 views/layouts/*.html
使用两个变量,但 filepath.Join 只给出 views/layouts
而不是 views/layouts/
var (
LayoutDir string = filepath.Join("views","layouts")
TemplateExt string = "*.html"
)
然后调用
f, err:= filepath.Glob(LayoutDir + TemplateExt)
因此 f 包含 views/layouts*.html
而不是 views/layouts/*.html
我应该如何解决这个问题?在这种情况下使用 filepath.Join 是一个好习惯吗?
f, err:= filepath.Glob(filepath.Join(LayoutDir, TemplateExt))
应该可以解决问题
或
LayoutDir string = filepath.Join("views", "layouts") + string(filepath.Separator)
或
LayoutDir string = filepath.Join("views", "layouts") + string(os.PathSeparator)
我没有足够的代表发表评论 - 也许 mod 会将我的 'answer' 移至评论。需要注意的一件事是此代码将在 windows 台机器上生成 views/layouts\
...我只使用 /
而不是 filepath.Separator 或 os.PathSeparator。