在Go中与.go源文件相同的目录中打开一个文件

Bla*_*sad 1 go

在源文件$ PWD/dir/src.go中我使用

os.Open("myfile.txt")
Run Code Online (Sandbox Code Playgroud)

它在$ PWD中查找myfile.txt(看起来很正常).

有没有办法告诉Go在src.go所在的目录中查找myfile.txt?我需要像__FILE__Ruby 这样的东西.

Jer*_*all 6

Go不是解释语言,因此在与源文件相同的位置查找文件没有任何意义.编译go二进制文件,并且不需要存在源文件来运行二进制文件.因为Go没有与FILE相同的东西.runtime.Caller函数在编译二进制文件时返回文件名.

我想也许如果我们理解你为什么真正想要这个功能,我们可以更好地为你提供建议.