gookit/properties - GO 实现的 Java Properties 格式内容解析、编码和解码库
properties
格式内容解析器json
包一样的 Marshal
和 Unmarshal
!
, #
开头的行注释//
, /* multi line comments */
\\
结尾进行换行'''multi line string''''
, """multi line string"""
${some.other.key}
${APP_ENV}
, ${APP_ENV | default}
解析并绑定到结构体
package main
import (
"fmt"
"github.com/gookit/properties"
)
func Example() {
text := `
# properties string
name = inhere
age = 200
`
p, err := properties.Parse(text)
if err != nil {
panic(err)
}
type MyConf struct {
Name string `properties:"name"`
Age int `properties:"age"`
}
cfg := &MyConf{}
err = p.MapStruct("", cfg)
if err != nil {
panic(err)
}
fmt.Println(*cfg)
// Output:
// {inhere 200}
}
1
randm 2022-08-25 15:09:28 +08:00
已 star ,楼主的工具库挺好用的
|