golang打包后读取配置文件
在用go写代码的时候,为了好用经常使用go build 打包,如果我们用到了配置文件,就总是导致不能找到文件所在位置了出现bug,所以以下代码就解决了这个问题。
核心代码:
file, err := exec.LookPath(os.Args[0])
if err != nil {
fmt.Println("无法获取可执行文件路径:", err)
}
path, err := filepath.Abs(file)
if err != nil {
fmt.Println("无法获取文件绝对路径:", err)
}
index := strings.LastIndex(path, string(os.PathSeparator))
if index == -1 {
fmt.Println("路径分隔符未找到")
}
path = path[:index]
configFileName = filepath.Join(path, "config-pro.yaml")
案例:
Successful!