package main
import (
"fmt"
"github.com/xuri/excelize/v2"
)
//参考文档:https://www.bookstack.cn/read/excelize-v2.0/spilt.4.1.md
func main() {
//打开文件
f, err := excelize.OpenFile("./one.xlsx")
if err != nil {
fmt.Println(err)
return
}
//获取当前工作表索引
sheet := f.GetActiveSheetIndex()
fmt.Println("active sheet=", sheet)
// 获取单元格内容
cell, err := f.GetCellValue("Sheet1", "B2")
if err != nil {
fmt.Println(err)
return
}
fmt.Println(cell)
rows, err := f.GetRows("Sheet1")
// 获取sheet1中所有的行
for _, row := range rows {
for _, colCell := range row {
fmt.Print(colCell, "\t")
}
fmt.Println() //第一次看到这种换行格式哈哈哈哈
}
//对sheet1中的内容进行操作
for i, row := range rows {
//标题不操作
if i == 0 {
continue
}
fmt.Println(row)
}
}
封装成一个方法
package excel
import (
"github.com/xuri/excelize/v2"
)
//参考文档:https://www.bookstack.cn/read/excelize-v2.0/spilt.4.1.md
func ReadContent(path string) ([][]string, error) {
//打开文件
f, err := excelize.OpenFile(path)
if err != nil {
return nil, err
}
rows, err := f.GetRows("Sheet1")
var list [][]string
//对sheet1中的内容进行操作
for i, row := range rows {
//标题不操作
if i == 0 {
continue
}
list = append(list, row)
}
// fmt.Printf("list=%#v\n", list)
return list, nil
}