[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-4805":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":46,"readmeContent":47,"aiSummary":48,"trendingCount":16,"starSnapshotCount":16,"syncStatus":49,"lastSyncTime":50,"discoverSource":51},4805,"excelize","qax-os\u002Fexcelize","qax-os","Go language library for reading and writing Microsoft Excel™ (XLAM \u002F XLSM \u002F XLSX \u002F XLTM \u002F XLTX) spreadsheets","https:\u002F\u002Fxuri.me\u002Fexcelize",null,"Go",20657,1910,248,102,0,4,18,90,14,44.84,"BSD 3-Clause \"New\" or \"Revised\" License",false,"master",true,[27,28,29,30,31,32,5,33,34,35,36,37,38,39,40,41,42,43,44,45],"agent","ai","analytics","chart","ecma-376","excel","formula","go","mcp","microsoft","office","ooxml","spreadsheet","statistics","table","vba","visualization","xlsx","xml","2026-06-12 02:01:04","\u003Cp align=\"center\">\u003Cimg width=\"650\" src=\".\u002Fexcelize.svg\" alt=\"Excelize logo\">\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fxuri\u002Fexcelize\u002Factions\u002Fworkflows\u002Fgo.yml\">\u003Cimg src=\"https:\u002F\u002Fgithub.com\u002Fxuri\u002Fexcelize\u002Factions\u002Fworkflows\u002Fgo.yml\u002Fbadge.svg\" alt=\"Build Status\">\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fcodecov.io\u002Fgh\u002Fqax-os\u002Fexcelize\">\u003Cimg src=\"https:\u002F\u002Fcodecov.io\u002Fgh\u002Fqax-os\u002Fexcelize\u002Fbranch\u002Fmaster\u002Fgraph\u002Fbadge.svg\" alt=\"Code Coverage\">\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fgoreportcard.com\u002Freport\u002Fgithub.com\u002Fxuri\u002Fexcelize\u002Fv2\">\u003Cimg src=\"https:\u002F\u002Fgoreportcard.com\u002Fbadge\u002Fgithub.com\u002Fxuri\u002Fexcelize\u002Fv2\" alt=\"Go Report Card\">\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fpkg.go.dev\u002Fgithub.com\u002Fxuri\u002Fexcelize\u002Fv2\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fgo.dev-reference-007d9c?logo=go&logoColor=white\" alt=\"go.dev\">\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fopensource.org\u002Flicenses\u002FBSD-3-Clause\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-bsd-orange.svg\" alt=\"Licenses\">\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fwww.paypal.com\u002Fpaypalme\u002Fxuri\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDonate-PayPal-green.svg\" alt=\"Donate\">\u003C\u002Fa>\n\u003C\u002Fp>\n\n# Excelize\n\n## Introduction\n\nExcelize is a library written in pure Go providing a set of functions that allow you to write to and read from XLAM \u002F XLSM \u002F XLSX \u002F XLTM \u002F XLTX files. Supports reading and writing spreadsheet documents generated by Microsoft Excel&trade; 2007 and later. Supports complex components by high compatibility, and provided streaming API for generating or reading data from a worksheet with huge amounts of data. This library needs Go version 1.25.0 or later. The full docs can be seen using go's built-in documentation tool, or online at [go.dev](https:\u002F\u002Fpkg.go.dev\u002Fgithub.com\u002Fxuri\u002Fexcelize\u002Fv2) and [docs reference](https:\u002F\u002Fxuri.me\u002Fexcelize\u002F).\n\n## Basic Usage\n\n### Installation\n\n```bash\ngo get github.com\u002Fxuri\u002Fexcelize\n```\n\n- If your packages are managed using [Go Modules](https:\u002F\u002Fgo.dev\u002Fblog\u002Fusing-go-modules), please install with following command.\n\n```bash\ngo get github.com\u002Fxuri\u002Fexcelize\u002Fv2\n```\n\n### Create spreadsheet\n\nHere is a minimal example usage that will create spreadsheet file.\n\n```go\npackage main\n\nimport (\n    \"fmt\"\n\n    \"github.com\u002Fxuri\u002Fexcelize\u002Fv2\"\n)\n\nfunc main() {\n    f := excelize.NewFile()\n    defer func() {\n        if err := f.Close(); err != nil {\n            fmt.Println(err)\n        }\n    }()\n    \u002F\u002F Create a new sheet.\n    index, err := f.NewSheet(\"Sheet2\")\n    if err != nil {\n        fmt.Println(err)\n        return\n    }\n    \u002F\u002F Set value of a cell.\n    f.SetCellValue(\"Sheet2\", \"A2\", \"Hello world.\")\n    f.SetCellValue(\"Sheet1\", \"B2\", 100)\n    \u002F\u002F Set active sheet of the workbook.\n    f.SetActiveSheet(index)\n    \u002F\u002F Save spreadsheet by the given path.\n    if err := f.SaveAs(\"Book1.xlsx\"); err != nil {\n        fmt.Println(err)\n    }\n}\n```\n\n### Reading spreadsheet\n\nThe following constitutes the bare to read a spreadsheet document.\n\n```go\npackage main\n\nimport (\n    \"fmt\"\n\n    \"github.com\u002Fxuri\u002Fexcelize\u002Fv2\"\n)\n\nfunc main() {\n    f, err := excelize.OpenFile(\"Book1.xlsx\")\n    if err != nil {\n        fmt.Println(err)\n        return\n    }\n    defer func() {\n        \u002F\u002F Close the spreadsheet.\n        if err := f.Close(); err != nil {\n            fmt.Println(err)\n        }\n    }()\n    \u002F\u002F Get value from cell by given worksheet name and cell reference.\n    cell, err := f.GetCellValue(\"Sheet1\", \"B2\")\n    if err != nil {\n        fmt.Println(err)\n        return\n    }\n    fmt.Println(cell)\n    \u002F\u002F Get all the rows in the Sheet1.\n    rows, err := f.GetRows(\"Sheet1\")\n    if err != nil {\n        fmt.Println(err)\n        return\n    }\n    for _, row := range rows {\n        for _, colCell := range row {\n            fmt.Print(colCell, \"\\t\")\n        }\n        fmt.Println()\n    }\n}\n```\n\n### Add chart to spreadsheet file\n\nWith Excelize chart generation and management is as easy as a few lines of code. You can build charts based on data in your worksheet or generate charts without any data in your worksheet at all.\n\n\u003Cp align=\"center\">\u003Cimg width=\"650\" src=\".\u002Ftest\u002Fimages\u002Fchart.png\" alt=\"Excelize\">\u003C\u002Fp>\n\n```go\npackage main\n\nimport (\n    \"fmt\"\n\n    \"github.com\u002Fxuri\u002Fexcelize\u002Fv2\"\n)\n\nfunc main() {\n    f := excelize.NewFile()\n    defer func() {\n        if err := f.Close(); err != nil {\n            fmt.Println(err)\n        }\n    }()\n    for idx, row := range [][]interface{}{\n        {nil, \"Apple\", \"Orange\", \"Pear\"}, {\"Small\", 2, 3, 3},\n        {\"Normal\", 5, 2, 4}, {\"Large\", 6, 7, 8},\n    } {\n        cell, err := excelize.CoordinatesToCellName(1, idx+1)\n        if err != nil {\n            fmt.Println(err)\n            return\n        }\n        f.SetSheetRow(\"Sheet1\", cell, &row)\n    }\n    if err := f.AddChart(\"Sheet1\", \"E1\", &excelize.Chart{\n        Type: excelize.Col3DClustered,\n        Series: []excelize.ChartSeries{\n            {\n                Name:       \"Sheet1!$A$2\",\n                Categories: \"Sheet1!$B$1:$D$1\",\n                Values:     \"Sheet1!$B$2:$D$2\",\n            },\n            {\n                Name:       \"Sheet1!$A$3\",\n                Categories: \"Sheet1!$B$1:$D$1\",\n                Values:     \"Sheet1!$B$3:$D$3\",\n            },\n            {\n                Name:       \"Sheet1!$A$4\",\n                Categories: \"Sheet1!$B$1:$D$1\",\n                Values:     \"Sheet1!$B$4:$D$4\",\n            }},\n        Title: excelize.ChartTitle{\n            Paragraph: []excelize.RichTextRun{\n                {\n                    Text: \"Fruit 3D Clustered Column Chart\",\n                },\n            },\n        },\n    }); err != nil {\n        fmt.Println(err)\n        return\n    }\n    \u002F\u002F Save spreadsheet by the given path.\n    if err := f.SaveAs(\"Book1.xlsx\"); err != nil {\n        fmt.Println(err)\n    }\n}\n```\n\n### Add picture to spreadsheet file\n\n```go\npackage main\n\nimport (\n    \"fmt\"\n    _ \"image\u002Fgif\"\n    _ \"image\u002Fjpeg\"\n    _ \"image\u002Fpng\"\n\n    \"github.com\u002Fxuri\u002Fexcelize\u002Fv2\"\n)\n\nfunc main() {\n    f, err := excelize.OpenFile(\"Book1.xlsx\")\n    if err != nil {\n        fmt.Println(err)\n        return\n    }\n    defer func() {\n        \u002F\u002F Close the spreadsheet.\n        if err := f.Close(); err != nil {\n            fmt.Println(err)\n        }\n    }()\n    \u002F\u002F Insert a picture.\n    if err := f.AddPicture(\"Sheet1\", \"A2\", \"image.png\", nil); err != nil {\n        fmt.Println(err)\n    }\n    \u002F\u002F Insert a picture to worksheet with scaling.\n    if err := f.AddPicture(\"Sheet1\", \"D2\", \"image.jpg\",\n        &excelize.GraphicOptions{ScaleX: 0.5, ScaleY: 0.5}); err != nil {\n        fmt.Println(err)\n    }\n    \u002F\u002F Insert a picture offset in the cell with printing support.\n    enable, disable := true, false\n    if err := f.AddPicture(\"Sheet1\", \"H2\", \"image.gif\",\n        &excelize.GraphicOptions{\n            PrintObject:     &enable,\n            LockAspectRatio: false,\n            OffsetX:         15,\n            OffsetY:         10,\n            Locked:          &disable,\n        }); err != nil {\n        fmt.Println(err)\n    }\n    \u002F\u002F Save the spreadsheet with the origin path.\n    if err = f.Save(); err != nil {\n        fmt.Println(err)\n    }\n}\n```\n\n## Contributing\n\nContributions are welcome! Open a pull request to fix a bug, or open an issue to discuss a new feature or change. XML is compliant with [part 1 of the 5th edition of the ECMA-376 Standard for Office Open XML](https:\u002F\u002Fwww.ecma-international.org\u002Fpublications-and-standards\u002Fstandards\u002Fecma-376\u002F).\n\n## Licenses\n\nThis program is under the terms of the BSD 3-Clause License. See [https:\u002F\u002Fopensource.org\u002Flicenses\u002FBSD-3-Clause](https:\u002F\u002Fopensource.org\u002Flicenses\u002FBSD-3-Clause).\n\nThe Excel logo is a trademark of [Microsoft Corporation](https:\u002F\u002Faka.ms\u002Ftrademarks-usage). This artwork is an adaptation.\n\nThe Go gopher was created by [Renee French](https:\u002F\u002Fgo.dev\u002Fdoc\u002Fgopher\u002FREADME). Licensed under the [Creative Commons 4.0 Attributions license](http:\u002F\u002Fcreativecommons.org\u002Flicenses\u002Fby\u002F4.0\u002F).\n\n## Gold Sponsors\n\n\u003Ca href=\"https:\u002F\u002Fwww.gravityclimate.com\" alt=\"Gravity\">\u003Cimg width=\"120\" src=\"https:\u002F\u002Fxuri.me\u002Fexcelize\u002Fimages\u002Fvendor\u002Fgravityclimate.com.svg\" alt=\"Gravity\">\u003C\u002Fa>\n","Excelize 是一个用纯 Go 语言编写的库，用于读写 Microsoft Excel™ (XLAM \u002F XLSM \u002F XLSX \u002F XLTM \u002F XLTX) 电子表格文件。它支持读写由 Microsoft Excel 2007 及更高版本生成的电子表格文档，并且具有高兼容性，能够处理复杂的组件。此外，Excelize 提供了流式 API，可以高效地生成或读取包含大量数据的工作表。该库需要 Go 1.25.0 或更高版本。Excelize 适用于需要在 Go 项目中处理 Excel 文件的各种场景，例如数据分析、报表生成和自动化办公任务。",2,"2026-06-11 03:00:35","top_language"]