欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Go 生成(读取)xlsx文件

程序员文章站 2022-07-13 13:15:43
...
目录
1. go生成xlsx文件
go get github.com/xuri/excelize

生成 excel 文件

package main

import "github.com/xuri/excelize"
import "fmt"

func main() {

	xlsx := excelize.NewFile()
	// Create a new sheet.
	index := xlsx.NewSheet("Sheet2")
	// Set value of a cell.
	xlsx.SetCellValue("Sheet2", "A2", "Hello world.")
	xlsx.SetCellValue("Sheet1", "B2", 100)
	// Set active sheet of the workbook.
	xlsx.SetActiveSheet(index)
	// Save xlsx file by the given path.
	err := xlsx.SaveAs("./Book1.xlsx")
	if err != nil {
		fmt.Println(err)
	}
}

大致代码过程就是,创建一个文件对象,对象下创建一个表名,最后你可以再不同表名下的不同行和列下设置对应值。

回目录

2. go读取xlsx文件

读取xlsx文件

func readXlsx()  {
	xlsx, err := excelize.OpenFile("./Book1.xlsx")
	if err != nil {
		fmt.Println(err)
		return
	}
	// Get value from cell by given worksheet name and axis.
	cell := xlsx.GetCellValue("Sheet1", "B2")
	fmt.Println(cell)
	// Get all the rows in the Sheet1.
	rows := xlsx.GetRows("Sheet1")
	for _, row := range rows {
		for _, colCell := range row {
			fmt.Print(colCell, "\t")
		}
		fmt.Println()
	}
}

代码解读:首先读取文件 Book1.xlsx ,读取指定位置单元格cell 或者 读取单元格的所有内容 rows ,得到的是一个二维的字符串数组。

回目录