Files
PandaX/pkg/tool/excel.go
2023-04-27 17:17:46 +08:00

43 lines
930 B
Go

package tool
import (
"fmt"
"github.com/xuri/excelize/v2"
)
// 读取数据表
func ReadExcel(filename string) ([]string, []map[string]interface{}) {
ret := make([]map[string]interface{}, 0)
f, err := excelize.OpenFile(filename)
if err != nil {
fmt.Println("读取excel文件出错", err.Error())
return nil, ret
}
sheets := f.GetSheetMap()
sheet1 := sheets[1]
fmt.Println("第一个工作表", sheet1)
rows, err := f.GetRows(sheet1)
cols := make([]string, 0)
isHead := true
for _, row := range rows {
if isHead { //取得第一行的所有数据---execel表头
if len(row) == 0 {
continue
}
for _, colCell := range row {
cols = append(cols, colCell)
}
isHead = false
fmt.Println("列信息", cols)
} else {
theRow := map[string]interface{}{}
for j, colCell := range row {
k := cols[j]
theRow[k] = colCell
}
ret = append(ret, theRow)
}
}
return cols, ret
}