golang中go build 后读取配置文件

golang打包后读取配置文件

在用go写代码的时候,为了好用经常使用go build 打包,如果我们用到了配置文件,就总是导致不能找到文件所在位置了出现bug,所以以下代码就解决了这个问题。

核心代码:

go 复制代码
	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!

相关推荐
步行cgn2 分钟前
Spring Boot application.properties 配置文件详解
后端
分支预测失败5 分钟前
RISC-V 虚拟内存与 MMU 实战:从 Sv39 页表到 Linux 地址空间
后端
步行cgn5 分钟前
@SpringBootTest 详解:Spring Boot 测试的核心注解
后端
西西弗Sisyphus6 分钟前
Qt 无边框窗口自己实现拖拽与缩放
开发语言·qt
对象存储与RustFS10 分钟前
给 RustFS 拆多租户权限:IAM 用户、组与策略的实战
后端·rust·开源
狮子雨恋10 分钟前
anaconda python环境和QT python环境不一致如何解决
开发语言·python·qt
独立开发之道20 分钟前
【three.js教程】Three.js 矩阵变换:position/quaternion/scale 和 matrix 到底怎么配合
开发语言·javascript·矩阵
纪念 22920 分钟前
数据结构排序(四)
开发语言·数据结构
IvanCodes23 分钟前
Python 基础语法(四):循环结构与流程控制
开发语言·python
OPEN-F24 分钟前
C++工程化:编译链接、调试与性能优化
开发语言·c++