ホームページ  >  記事  >  バックエンド開発  >  golangでxlsを読み取る方法

golangでxlsを読み取る方法

王林
王林オリジナル
2023-05-12 22:10:372483ブラウズ

golang は、Web 開発、クラウド コンピューティング、その他の分野で広く使用されている、効率的で簡潔で使いやすいプログラミング言語です。実際のプロジェクトでは、Excel ファイルを読み取ることが非常に一般的な要件です。この記事では、golang を使用して xls ファイルを読み取る方法と完全なコード例を紹介します。

1. 依存関係パッケージをインストールする

golang を使用して xls ファイルを読み取る前に、まず「go-xls」と呼ばれるオープン ソース ライブラリをインストールする必要があります。 go-xls は golang の xls 解析ライブラリであり、Excel を読み取るための API インターフェイスを提供します。

go コマンドを使用して go-xls パッケージをインストールします:

go get github.com/extrame/go-xls

上記のコマンドは、依存パッケージを自動的にダウンロードしてインストールします。完了後、go-xls の使用を開始できます。

2. xls ファイルの読み取り

次に、go-xls を使用して Excel ファイルを読み取り、内容をコンソールに出力する方法を示します。

「read_xls.go」という名前のファイルを再作成します。コード フレームワークは次のとおりです。

package main

import (
    "fmt"
    "github.com/extrame/go-xls"
)

func main() {
    // xls 文件路径
    filepath := "./test.xls"

    // 打开 xls 文件
    xlFile, err := xls.Open(filepath, "utf-8")

    if err != nil {
        fmt.Println(err)
        return
    }

    // 获取 Excel 中的第一张表
    sheet := xlFile.GetSheet(0)

    // 遍历表格中的所有行和列
    for i := 0; i <= int(sheet.MaxRow); i++ {
        row := sheet.Rows[i]
        for _, cell := range row.Cells {
            fmt.Printf("%s
", cell.String(xlFile))
        }
    }
}

xls ファイルを読み取る前に、いくつかの準備作業を行う必要があります。 Open 関数を使用して xls ファイルを開き、エンコード方式 (通常は「utf-8」) を指定します。エラーが発生した場合はファイルのオープンに失敗したことを示すメッセージが返されますが、それ以外の場合は Excel ファイルの読み込みが続行されます。

Excel ファイルには複数のテーブルを含めることができるため、この記事では最初のテーブルを読み取る方法のみを説明します。 GetSheet 関数を使用して Excel の最初のシートを取得し、シート内のすべての行と列を反復処理します。各セルについて、String 関数を使用してその内容を文字列に変換します。最後に、fmt.Printf を使用してセルの内容をコンソールに出力します。

3. 完全なコード例

以下は、任意の xls ファイルを読み取り、すべてのテーブルの内容をコンソールに出力できる完全なコード例です。コード内のコメントは、各ステップをより深く理解するのに役立ちます。

package main

import (
    "fmt"
    "github.com/extrame/go-xls"
)

func main() {
    // xls 文件路径
    filepath := "./test.xls"

    // 打开 xls 文件
    xlFile, err := xls.Open(filepath, "utf-8")

    if err != nil {
        fmt.Println(err)
        return
    }

    // 遍历 xls 中的所有表格
    for i := 0; i < xlFile.NumSheets(); i++ {
        sheet := xlFile.GetSheet(i)

        // 遍历表格中的所有行和列
        for i := 0; i <= int(sheet.MaxRow); i++ {
            row := sheet.Rows[i]
            for _, cell := range row.Cells {
                fmt.Printf("%s
", cell.String(xlFile))
            }
        }
    }
}

4. 概要

この記事では、golang を使用して xls ファイルを読み取る方法を紹介します。 go-xls ライブラリを使用すると、Excel ファイルの内容を簡単に読み取り、関連する処理を実行できます。この記事の内容が実際のプロジェクトの問題解決に役立てば幸いです。

以上がgolangでxlsを読み取る方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。