Excelize 是 Go 語言編寫的用於操作電子試算表辦公檔案的開源基礎庫,基於 ISO/IEC 29500、ECMA-376 國際標準。可以使用它來讀取、寫入由 Microsoft Excel、WPS、Apache OpenOffice、LibreOffice 等辦公軟體建立的電子試算表檔案。支援 XLAM / XLSM / XLSX / XLTM / XLTX 等多種檔案格式,高度相容帶有樣式、圖片(表)、透視表、切片器等複雜元件的檔案,並提供流式讀寫支援,用於處理包含大規模資料的工作簿。可應用於各類報表平臺、雲端計算、邊緣計算等系統。自 2016 年開源以來已成為雲原生應用尤其是 Go 語言開發者在處理電子試算表辦公檔案時的熱門選擇,正在被廣泛應用於大型網際網路公司、中小企業客戶和初創公司。榮獲 2022 年中國開源創新大賽一等獎、入選 2020 Gopher China - Go 領域明星開源專案 (GSP)、2018 年開源中國碼雲最有價值開源專案 GVP (Gitee Most Valuable Project)。
GitHub: github.com/xuri/excelize
Gitee: gitee.com/xurime/excelize
中文檔案: xuri.me/excelize/zh-hans
2023年8月28日,社群正式釋出了 2.8.0 版本,該版本包含了多項新增功能、錯誤修復和相容性提升優化。下面是有關該版本更新內容的摘要,完整的更改列表可檢視 changelog。
此版本中最顯著的變化包括:
ErrTableNameLength
重新命名為 ErrNameLength
PaneOptions
重新命名為 Selection
Comment
中的 Runs
欄位重新命名為 Paragraph
Style
資料型別中的 Lang
欄位ChartTitle
資料型別,使用 RichTextRun
型別代替DecimalPlaces
欄位的資料型別為指標型別AddShape
函數的簽名:將 func (f *File) AddShape(sheet, cell string, opts *Shape) error
改為 func (f *File) AddShape(sheet string, opts *Shape) error
ErrExistsTableName
和 ErrorFormControlValue
Options
資料型別中新增 ShortDatePattern
, LongDatePattern
, LongTimePattern
和 CultureInfo
選項,支援設定長短日期與時間格式程式碼,相關 issue #1199CultureName
型別列舉GetTables
與 DeleteTable
支援獲取與刪除表格,相關 issue #674 和 #1454GetStyle
支援獲取樣式定義,相關 issue #314, #1520 和 #1521GetPanes
函數,支援獲取窗格和檢視選區設定AddFormControl
、GetFormControls
和 DeleteFormControl
, 支援新增主要水平和垂直座標軸標題,相關 issues #301 和 #1169AddChart
支援新增主要水平和垂直座標軸標題,相關 issue #1553AddChart
支援新增次座標軸,相關 issue #518AddChart
支援設定圖表富文字標題與圖表標題格式,相關 issue #1588AddShape
函數新增形狀時,如果給定的形狀型別不受支援,將返回異常錯誤GetPictures
支援讀取帶有單一單元格錨點位置的圖片,相關 issue #1585NewConditionalStyle
支援建立帶有數位格式與保護屬性的條件格式樣式,相關 issue #1610xlsxTabColor
資料型別,使用 xlsxColor
代替 xlsxTabColor
資料型別感謝 Excelize 的所有貢獻者,以下是為此版本提交程式碼的貢獻者列表:
歡迎加入技術交流群 DingTalk Group ID: 30047129
QQ Group ID: 1302058237