登录
首页 >  Golang >  Go问答

尝试检查路径时出现错误

来源:stackoverflow

时间:2024-04-08 23:03:38 488浏览 收藏

学习Golang要努力,但是不要急!今天的这篇文章《尝试检查路径时出现错误》将会介绍到等等知识点,如果你想深入学习Golang,可以关注我!我会持续更新相关文章的,希望对大家都能有所帮助!

问题内容

我正在尝试检查我的 golang 应用程序中的 windows 目录。 这是我的代码

func createWalletDirectory(path string) (err error) {
    _, err = os.Stat(path)

    if os.IsNotExist(err) {
        return err
    }

    path = filepath.FromSlash(path)

    path = path + string(os.PathSeparator) + DirectoryName

    err = os.Mkdir(path, 0666)

    return
}

因此,在函数的第一行,我收到如下所示的错误

字符串转义代码中的无效字符“i”

示例路径:c:\users

注意:我通过 post 请求从用户那里获取的路径 所以我需要编写一个代码来检查跨平台路径。 我该如何解决这个错误?


解决方案


在用双引号括起来的 go 字符串中,反斜杠开始转义码,例如\n\u2318。为了避免这种情况,您有两种选择:

  • 使用双反斜杠 (\\),例如"c:\\用户"
  • 使用反引号 (`) 而不是双引号来定义“原始字符串”,例如`c:\users`

Further reading

您可以使用 path 包来处理 url(文件路径为“path/filepath”),这也有助于平台独立性。因此,您可以执行以下操作来创建路径

givenpath = filepath.join(directoryname, path)

还有另一种方法可以做到这一点

path := strings.Join([]string{DirectoryName, path}, string(os.PathSeparator))

本篇关于《尝试检查路径时出现错误》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>