GO/Golang Excel implements the analysis and export of tables based on excelize
go get github.com/xuri/excelize/v2
Create a spreadsheet
func TestCreateSpreadsheet(t *testing.T) {
f := excelize. NewFile()
// create a new sheet.
index := f. NewSheet("Sheet2")
// set the value to the cell
f. SetCellValue("Sheet2", "A2", "Hello world.")
f. SetCellValue("Sheet1", "B2", 100)
// Set active sheet
f. SetActiveSheet(index)
// save the spreadsheet
if err := f.SaveAs("Book1.xlsx"); err != nil {
fmt.Println(err)
}
// convert spreadsheet to buffer
f. WriteToBuffer()
}
read spreadsheet
func TestReadSpreadsheet(t *testing.T) {
f, err := excelize. OpenFile("Book1. xlsx")
if err != nil {
fmt.Println(err)
return
}
defer func() {
// close the file
if err := f.Close(); err != nil {
fmt.Println(err)
}
}()
// Get the value from the specified cell
cell, err := f.GetCellValue("Sheet1", "B2")
if err != nil {
fmt.Println(err)
return
}
fmt.Println(cell)
// get row data from sheet
rows, err := f. GetRows("Sheet1")
if err != nil {
fmt.Println(err)
return
}
for _, row := range rows {
for _, colCell := range row {
fmt. Print(colCell, "\t")
}
fmt. Println()
}
}