NPOI 提供了 WorkbookFactory 类来创建 Excel 工作簿对象,它能够自动检测文件格式并返回适当的工作簿类型(HSSFWorkbook 或 XSSFWorkbook)。
import NPOI;
// 使用完整命名空间路径创建工作簿
var workbook = NPOI.SS.UserModel.WorkbookFactory.Create("/fakeExcel.xlsx")
print("工作簿类型: " + workbook.GetType().Name);
aardio 的 NPOI 扩展库提供了指向 NPOI.SS.UserModel.WorkbookFactory 的短名称 NPOI.Workbook,代码可以更简洁:
import NPOI;
// 使用简化名称创建工作簿
var workbook = NPOI.Workbook("/fakeExcel.xlsx")
print("工作簿类型: " + workbook.GetType().Name);
如果需要更灵活的控制,可以通过文件流创建工作簿:
import NPOI;
import System.IO;
// 创建文件流对象
var fs = System.IO.FileStream("/fakeExcel.xlsx","r+")
// 通过文件流创建工作簿
var workbook = NPOI.Workbook(fs)
print("工作簿类型: " + workbook.GetType().Name);
WorkbookFactory.Create 方法会自动检测 Excel 文件格式(.xls 或 .xlsx),并返回对应的工作簿对象/,它会自动转换为当前操作系统支持的路径格式NPOI.Workbook 可以使代码更简洁易读根据文件格式不同,返回的工作簿对象可能是:
HSSFWorkbook - 用于处理 .xls 格式(Excel 97-2003)XSSFWorkbook - 用于处理 .xlsx 格式(Excel 2007+)