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!

相关推荐
衍生星球13 小时前
【Java 语言】— 面向对象:构造方法(无参、有参构造)
java·开发语言
java_nnnn13 小时前
Spring Boot 配置文件详解:从基础语法到 YAML 配置
spring boot·后端·github
SimonKing13 小时前
素笺( local-notes)全面优化,新增功能体验不一样的笔记
java·后端·程序员
FungLeo13 小时前
成为全栈·Go 后端篇·换后端不改前端:四个客户端如何做兼容回归
flutter·golang·go·成为全栈·兼容测试·taro 小程序
yuniko-n13 小时前
【JVM】对象内存布局
java·开发语言·jvm
何中应13 小时前
【Go-1】变量&常量定义
开发语言·后端·golang
愚农搬码14 小时前
电子表单、动态表单、表单设计器和表单引擎到底有什么区别?
java·后端
挖掘狂人14 小时前
Redis 为什么快?把 "存内存" 这句话拆开看
redis·后端·性能优化
CarIise14 小时前
Spring 框架AOP与 XML 基础
java·开发语言
Moment14 小时前
DeepSeek 发布新模型,直接把 Agent 联网搜索的门槛打下来了!
前端·后端