2

我有一个文件可以os.open()让我返回,no such file or directory. 是否有一个函数可以转义文件名以获得正确的路径?类似于 net 包的东西QueryEscape?,但当然是文件路径

这是路径名称"Music/3OH!3 - Streets Of Gold 2010 [Cov+CD][Bubanee]/06. Touchin On My - 30H!3.mp3"

我只是使用一个简单的

srcName := "Music/3OH!3 - Streets Of Gold 2010 [Cov+CD][Bubanee]/06. Touchin On My - 30H!3.mp3"
src, err := os.Open(srcName)
if err != nil {
    fmt.Println(err)
    return
}

顺便说一句,该文件确实存在,只是不能遵循路径名。bash 可以遵循的路径Music/3OH\!3\ -\ Streets\ Of\ Gold\ \[Cov+CD\]\[Bubanee\]/12.\ Strrets\ Of\ Gold\ -\ 30H\!3.mp3显示了所有需要的转义。

4

1 回答 1

3

我尝试在我的机器(Mac OS 10.8.3)上创建相同的目录结构,并且使用您的代码打开文件没有问题。这意味着该路径在打开时已正确转义。

确保从文件夹正上方的位置运行 go 程序Music/,或者只使用srcName.

于 2013-03-29T18:44:43.720 回答