iT邦幫忙

0

Excelize 釋出 2.11.1 版本,開源的 Excel 檔案基礎庫

  • 分享至 

  • xImage
  •  

Excelize 釋出 2.11.1 版本,開源的 Excel 檔案基礎庫

Excelize 是 Go 語言編寫的用於操作 Office Excel 檔案基礎庫,基於 ECMA-376,ISO/IEC 29500 國際標準。可以使用它來讀取、寫入由 Microsoft Excel™ 2007 及以上版本創建的電子錶格檔案。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多種檔案格式,高度兼容帶有樣式、圖片(表)、樞紐分析表、切片器等複雜組件的檔案,並提供流式讀寫 API,用於處理包含大規模數據的活頁簿。

2026年11月2日,社區正式釋出了 2.11.1 版本,該版本包含了多項新增功能、錯誤修復和兼容性提升優化。下面是有關該版本更新內容的摘要,此版本中最顯著的變化包括:

相容性提示

  • 升級 Go 語言版本要求至 1.26.0 或更高版本,以升級依賴包 golang.org/x/crypto

安全更新

  • 修復當共享字串索引為負數時取得儲存格值引發程式 panic 的問題 (CVE-2026-104819),相關安全公告 GHSA-48hm-4h8j-58fg
  • 修復 GetPivotTables 函式在樞紐分析表欄位索引無效時引發程式 panic 的問題 (CVE-2026-107211),相關安全公告 GHSA-mx22-3794-2vpv
  • 修復列迭代器對列號無限制的問題 (CVE-2026-107212),相關安全公告 GHSA-jw42-f3rr-4cc3
  • 修復 GetSlicers 函式從不含繪圖部件的工作表中獲取交叉分析篩選器時引發程式 panic 的問題 (CVE-2026-107213),相關安全公告 GHSA-r7x5-4969-99p7
  • 修復解密格式錯誤的活頁簿時引發程式 panic 的問題 (CVE-2026-107214),相關安全公告 GHSA-2j4c-ffch-9f23
  • 修復解密活頁簿時無限制分配 EncryptionInfo 和 EncryptedPackage 串流大小的問題 (CVE-2026-107215),相關安全公告 GHSA-x2q3-8cjh-766f
  • 修復 CalcCellValue 函式因 ANCHORARRAY 公式循環引用導致堆疊溢位的問題 (CVE-2026-107216),相關安全公告 GHSA-wp2g-vpjj-g53r
  • 修復 ColumnNameToNumber 和 JoinCellName 函式接受無效欄名而導致整數溢位的問題 (CVE-2026-107217),相關安全公告 GHSA-c85p-xxjj-2r75
  • 修復 LEFT、LEFTB、RIGHT 和 RIGHTB 公式函式中 Unicode 處理和字元數溢位的問題 (CVE-2026-107218),相關安全公告 GHSA-8jjq-8j9w-m2v6
  • 修复解密带有敏捷加密算法的活页簿时,金鑰自旋次数无限制的问题 (CVE-2026-107219),相關安全公告 GHSA-jrfj-fhj2-jjvm
  • 修復工作表中存在空合併存儲格引用時引發程式 panic 的問題 (CVE-2026-107220),相關安全公告 GHSA-g27h-8qhm-6pff
  • 修復列內存儲格未按欄升序排列時引發程式 panic 的問題 (CVE-2026-107221),相關安全公告 GHSA-8mcq-6wmr-jrjv
  • 修復 GetConditionalFormats 函式在條件格式規則格式錯誤時引發程式 panic 的問題 (CVE-2026-107222),相關安全公告 GHSA-rxcj-4pj5-74gr
  • 修復最小和最大欄名稱溢位的問題 (CVE-2026-107223),相關安全公告 GHSA-fq3v-74gv-27gm
  • 修復因解壓縮大小溢位導致開啟活頁簿引發程式 panic 的問題 (CVE-2026-107224),相關安全公告 GHSA-fw94-4wwp-w8pw
  • 修復使用負數樣式索引獲取樣式時引發程式 panic 的問題 (CVE-2026-107225),相關安全公告 GHSA-5h23-36rv-pm65

新增功能

  • 新增 EmbeddedObject 資料類型
  • 新增 2 個常數:MaxCFBStreamSizeV3 和 MaxCFBStreamSizeV4
  • 新增 GetShapes 函式,支援取得圖形,相關 issue 436
  • 新增 GetEmbeddedObjects 和 SetGetEmbeddedObject 函式,支援取得和設定內嵌物件,相關 issue 158 和 2186
  • CalcCellValue 函數支援計算帶有陣列公式參數的 AND 公式函數
  • SetConditionalFormat 函式支援驗證樣式索引,相關 issue 2400

相容性提升

  • 函式 SetCellValue 儲存數值的精度與 Microsoft Excel™ 一致,相關 issue 1757

問題修復

  • 修復 GetPictures 函式在某些情況下未傳回圖片位置屬性的問題,解決 issue 2217
  • 修復 CalcCellValue 函式計算括號或運算符內包含錯誤值的公式時傳回錯誤計算結果的問題,解決 issue 1164 和 2344
  • 修復 CalcCellValue 函式在某些情況下未傳回預期錯誤的問題,解決 issue 2349 和 2432
  • 修復 CalcCellValue 函式在計算 16 個公式函式時傳回錯誤結果的問題:COUNT、COUNTA、EDATE、HLOOKUP、IF、INDIRECT、ISNUMBER、MDETERM、MINVERSE、OR、SUM、TRIM、VALUE、VLOOKUP、WEEKDAY 和 XLOOKUP,解決 issue 2411、2412、2413、2414、2415、2416、2417、2430、2436、2439 和 2445
  • 修復 CalcCellValue 函式在公式中右括號不匹配時引發程式 panic 的問題,解決 issue 2409
  • 修復 CalcCellValue 函式計算含有無效參數的 AVERAGEIFS、COUNTIFS、MAXIFS、MINIFS、PERCENTILE.EXC 和 SUMIFS 公式函式時引發程式 panic 的問題,解決 issue 2426
  • 修復 AddChart 和 AddChartSheet 函式在某些情況下生成無效圖表導致活頁簿損壞的問題,解決 issue 2355 和 2356
  • 修復串流寫入器未對時間間隔類型的存儲格值套用數字格式的問題,解決 issue 2371
  • 修復使用 time.Duration 資料類型的值設定存儲格值時精度遺失的問題,解決 issue 2372
  • 修復 AddSlicer 函式為資料透視表的不同欄位重複使用相同切片器快取的問題,解決 issue 2383
  • 修復 GetStyle 函式對無圖案填滿傳回無效樣式的問題,解決 issue 2384
  • 修復 GetFormControls 和 GetTables 函式無法取得工作簿內部帶有絕對路徑部件的表單控制項和表格的問題,解決 issue 2386
  • 修復 GetPanes 函式在某些情況下無法獲取分割窗格的問題,解決 issue 2387
  • 修復 SetCalcProps 函式無法將計算屬性設定為 false 的問題,相關 issue 2404
  • 修復 ExcelDateToTime 函式轉換 1900 年 1 月和 2 月的日期時,結果提前一天的問題,解決 issue 2466

其他

  • Go Modules 依賴模塊更新
  • 單元測試與文檔更新
  • 包含阿拉伯語、德語、英語、西班牙語、法語、意大利語、日語、韓語、葡萄牙語、俄語、簡體中文和繁體中文的多國語言文檔網站更新
  • 支援 WebAssembly / JavaScript 的 excelize-wasm NPM 包發佈版本更新
  • 支援 Python 的 excelize-py PyPI 包發佈版本更新
  • 支援 C# 的 ExcelizeCs NuGet .Net 包發佈版本更新

致謝

感謝 Excelize 的所有貢獻者,以下是為此版本提交代碼的貢獻者列表:

  • Aprax14 (Damiano Scarpellini)
  • xixixi1118
  • zhouxuanyu1204-bot (ZHOU XUANYU)
  • lzoeydzdnn
  • arpitjain099 (Arpit Jain)
  • n0liu (Roland)
  • 1436761858 (LP-LDY)
  • yashisrani (Yash Israni)
  • alliasgher (Ali Asghar)
  • ensiouel
  • a3190778733-pixel (shixia)
  • Nayjest (Vitalii Stepanenko)
  • ValeryVerkhoturov (Valery)
  • freeeve (Eve Freeman)
  • saifulferoz (Feroz)
  • lmonstergg
  • pcvelz (Peter van Velzen)
  • askalf (Thomas Sprayberry)
  • zac-scheiwe (Zac Scheiwe)
  • lrweck (Luis)
  • akashchamp
  • PhilflowIO (Philipp Lütje)
  • White0xdi3 (Jnyandeep Koyya)
  • keithadler (Keith Adler)
  • EpicHigh (Prasit Tongpradit)
  • wangyica879112 (ChangAo)
  • yl030628 (YL)
  • prostomarkeloff (prostomarkeloff)
  • Gabik21
  • Alifarid0011 (AliFarid)

*提醒邦友,使用第三方服務/API 時,請務必評估資安風險與隱私保護
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言