Golang:如何获取当前运行的文件的目录?

前端之家收集整理的这篇文章主要介绍了Golang:如何获取当前运行的文件的目录?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在nodejs中我使用 __dirname。在戈兰,这相当于什么?

我已经google了,发现这篇文章http://andrewbrookins.com/tech/golang-get-directory-of-the-current-file/。他在哪里使用下面的代码

_,filename,_,_ := runtime.Caller(1)
f,err := os.Open(path.Join(path.Dir(filename),"data.csv"))

但是它是在戈兰做正确的方式或惯用的方式吗?

这应该做:
import (
    "fmt"
    "log"
    "os"
    "path/filepath"
)

func main() {
    dir,err := filepath.Abs(filepath.Dir(os.Args[0]))
    if err != nil {
            log.Fatal(err)
    }
    fmt.Println(dir)
}

猜你在找的Go相关文章