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) で同じディレクトリ構造を作成しようとしましたが、コードを使用してファイルを開くのに問題はありませんでした。これは、すでに開いているときにパスが適切にエスケープされていることを意味します。

Music/フォルダーのすぐ上の場所から go プログラムを実行していることを確認するか、 srcName.

于 2013-03-29T18:44:43.720 に答える