go get github.com/spf13/viper
封装加载配置方法
#package configs
import "github.com/spf13/viper"
func LoadConfig(filepath string, encoding string, config interface{}) error {
vp := viper.New()
vp.SetConfigFile(filepath)
vp.SetConfigType(encoding)
err := vp.ReadInConfig()
if err != nil {
return err
}
return vp.Unmarshal(config)
}
func ReadConfig(filepath string, encoding string) (*viper.Viper, error) {
vp := viper.New()
vp.SetConfigFile(filepath)
vp.SetConfigType(encoding)
err := vp.ReadInConfig()
return vp, err
}