// 配置文件操作接口 // 秒寻科技 // 2024-01-09 // 周涛 package util import ( "fmt" "github.com/fsnotify/fsnotify" "github.com/spf13/viper" ) // viper实例 var viperConfig *viper.Viper // 初始化配置文件 func ViperConfigInit(filePath string, fileName string) { viperConfig = viper.New() //新建一个对象 viperConfig.AddConfigPath(filePath) //文件路径,相对路径 viperConfig.SetConfigName(fileName) //文件名 viperConfig.SetConfigType("toml") //文件扩展名 // 将配置文件读取到viper中 if err := viperConfig.ReadInConfig(); err != nil { panic(err) } //监听配置文件的变化 viperConfig.WatchConfig() viperConfig.OnConfigChange(func(e fsnotify.Event) { fmt.Println("Config file changed:", e.Name) }) } // 获得viper对象 func GetViper() *viper.Viper { return viperConfig }