duanhuan5409 2018-02-08 02:39
浏览 1188
已采纳

osPathSeparator是符文类型,但想用作字符串

I am currently using strings.TrimLeft(s string, cutset string) on a path and want to pass os.PathSeparator as the second argument.

os.PathSeparator is defined in the os package as follows:

const (
    PathSeparator     = '\\' // OS-specific path separator
    PathListSeparator = ';'  // OS-specific path list separator
)

When I do pass it, I get the following error:

cannot use os.PathSeparator (type rune) as type string in argument to strings.TrimLeft

Any idea why os.PathSeparator isn't a string?

  • 写回答

2条回答 默认 最新

  • dongzanxun2790 2018-02-08 02:47
    关注

    Because the separator actually is only a single character. If you want to use it as a string, why not simply cast it to string?

    strings.TrimLeft("/absolute/path", string(os.PathSeparator))
    

    will return "absolute/path"

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)
编辑
预览

报告相同问题?