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!

相关推荐
Sylvia33.14 分钟前
足球数据接口开发实战:如何用火星数据API盘活赛事应用
java·服务器·开发语言·数据库·python
小小放舟、15 分钟前
PaiCLI-Demo:从零实现 ReAct Agent + Tool Call
java·后端·intellij-idea·springboot·agent·react·tool call
z落落18 分钟前
C# WinForm 自定义控件
开发语言·c#
用户67570498850232 分钟前
别再乱用了!var arr []int 和 arr := []int{} 给整懵了?不就声明个空数组,项目居然崩了?
后端·go
马达拉1 小时前
为什么Bun查询数据库接口响应比Rust还快
后端
geovindu1 小时前
go: Enumeration Algorithm
开发语言·后端·算法·golang·枚举算法
雪隐2 小时前
个人电脑玩AI-10让5060 Ti给你打工——ComfyUI,我差点被它劝退三次
人工智能·后端
气概2 小时前
QT集成basler相机
开发语言·数码相机·qt
苦瓜汤补钙2 小时前
Oracle JDK8 环境配置-Win11
开发语言·数据库·笔记·oracle
工具派2 小时前
写代码时,我把这个本地 AI Commit Message 生成器接进了工作流
前端·后端