Go 读取和写入 Excel (XLSX) 文件的方法

2024-12-31 05:01:47   小编

Go 读取和写入 Excel (XLSX) 文件的方法

在 Go 语言中,要实现读取和写入 Excel(XLSX)文件,我们可以借助一些优秀的第三方库。其中,github.com/tealeg/xlsx 是一个常用且功能强大的库。

让我们来看看如何读取 XLSX 文件。

package main

import (
    "fmt"
    "github.com/tealeg/xlsx"
)

func readExcelFile(filePath string) {
    file, err := xlsx.OpenFile(filePath)
    if err!= nil {
        fmt.Println("Error opening file:", err)
        return
    }
    defer file.Close()

    for _, sheet := range file.Sheets {
        for rowIndex, row := range sheet.Rows {
            for colIndex, cell := range row.Cells {
                value := cell.String()
                fmt.Printf("Sheet: %s, Row: %d, Col: %d, Value: %s\n", sheet.Name, rowIndex, colIndex, value)
            }
        }
    }
}

在上述代码中,我们使用 xlsx.OpenFile 函数打开指定路径的 XLSX 文件。然后通过遍历工作表、行和单元格,获取并打印出单元格中的值。

接下来,是写入 XLSX 文件的方法。

package main

import (
    "github.com/tealeg/xlsx"
)

func writeExcelFile(filePath string) {
    file := xlsx.NewFile()
    sheet, err := file.AddSheet("Sheet1")
    if err!= nil {
        fmt.Println("Error adding sheet:", err)
        return
    }

    row := sheet.AddRow()
    cell1 := row.AddCell()
    cell1.Value = "Hello"
    cell2 := row.AddCell()
    cell2.Value = "World"

    err = file.Save(filePath)
    if err!= nil {
        fmt.Println("Error saving file:", err)
        return
    }
}

在写入操作中,我们首先创建一个新的 XLSX 文件,并添加一个工作表。然后向工作表的行中添加单元格,并设置单元格的值。最后使用 Save 方法保存文件。

通过以上的读取和写入方法,我们可以在 Go 语言中方便地处理 Excel 文件,满足各种数据处理和文件操作的需求。无论是从外部文件读取数据进行分析,还是生成新的 Excel 文件进行数据输出,都能够轻松实现。

在实际应用中,根据具体的业务需求,可以对读取和写入的逻辑进行进一步的扩展和优化,以适应不同的场景和数据格式。还需要注意处理可能出现的错误情况,保证程序的稳定性和可靠性。

TAGS: Go语言_Excel文件操作 Go处理Excel Go与Excel交互

欢迎使用万千站长工具!

Welcome to www.zzTool.com