幼儿园小朋友也能轻松使用的golang structs -->.xlsx小工具
- 使用方便
- 学习成本低(大概)
- 源码简单易懂
//标准版
goxcel.ExcelStructs(想储存的结构体切片,表名,储存路径)
//轻量版
goxcel.ExcelStructsLite(想储存的结构体切片)
go get github.com/childifish/goxcel
我们需要一个的结构体
type Student struct {
StuName string
StuNum int
}
在生产环境中,一般都会用到结构体切片
var students []Student
这里我们写一个随机生成结构体用于初始化(下方的students是50个Student结构体,过程不做赘述)
ExcelStructs 参数分别为希望储存的结构体切片,.xlsx表名,保存路径,(将来会被优化掉的源结构体),返回一个error。
goxcel.ExcelStructs(students, "学生", "")
在根目录下创建了"学生.xlsx"
StuName | StuNum |
---|---|
81 | 27887 |
247 | 34059 |
81 | 41318 |
25 | 22540 |
56 | 3300 |
如果对表头有特殊要求,不希望使用结构体字段名的话,可以使用tag:
type Student struct {
StuName string `helper:"姓名"`
StuNum int `helper:"学号"`
}
姓名 | 学号 |
---|---|
81 | 27887 |
247 | 34059 |
81 | 41318 |
25 | 22540 |
56 | 3300 |
字段类型目前支持数组,切片,结构体,具有嵌套结构的结构体(其他的俺还没试);
- 可选参数的ExcelStructsLite,
- 不自动储存的ExcelStructsNotStore,
- 定期删除DeleteTimer
- 不知道算不算链式的链式api
- 更成熟的错误返回(