使用golang对excel进行数据读取

golang对excel进行数据读取

在使用golang对excel进行表格数据读取时,发现已有的方式读取比较麻烦,代码量多。相比python中的pandas比较麻烦,所以对excel数据读取进行了一个简单的封装

1. 导包

执行

go get github.com/gly-hub/excel_utils

进入文件目录执行

go mod init 文件目录名

2.数据操作

直接上代码

package main

import (
	"fmt"

	"github.com/gly-hub/excel_utils"
)

func main() {
	excelpath := "C:/Users/Administrator/Desktop/浙江.xlsx"
	sheet := "Sheet1"
	col := make([]string, 3)
	col[0] = "文件名"
	col[1] = "效力"
	col[2] = "文号"

	col1 := make([]int, 1)
	col1[0] = 0

	if data, err := excel_utils.ReadExcel(excelpath, sheet); err != nil {
		panic(err)
	} else {
		data = data.ValueLoc(col)
		fmt.Println(data)
		fmt.Println(data.ValueIndex(col1))
		fmt.Println(data.RowRange(1, 2))
		fmt.Println(data.Value(1, 2))
		fmt.Println(data.Add(col, 5))
	}
}

这段代码是直接对excel进行数据获取的代码。

方法 参数 返回值 解释
ReadExcel excel路径,sheet名 dataframe 获取excel中的所有数据
ValueLoc 列名数组 dataframe 获取指定列数据
ValueIndex 列序号 dataframe 获取指定序号列数据
RowRange 起始行,结束行 dataframe 获取指定行范围数据
Value 行坐标,列坐标 string 获取指定坐标单元格数据
Add 数据列,指定行 dataframe 将数据插入指定行

其中的dataframe结构体如下:

type DataFrame struct {
	Data   [][]string //excel表二维数据
	ColLen int        //列数
	RowLen int        //行数
}

函数实现方法:golang获取excel中的指定列数据
刚开始学go,主要python,有什么错误,希望各位不吝赐教。

猜你喜欢

转载自blog.csdn.net/qq_36269019/article/details/107185349