要读取 Excel 2007+ 文件并转换为文本格式,需要使用 NPOI.XSSF.Extractor.XSSFExcelExtractor 类。该类继承自 POIXMLTextExtractor 基类并实现了 IExcelExtractor 接口。其 Text 属性提供了包含所有工作表内容的文本内容。
要读取 Excel 文件内容,可以通过文件路径创建 XSSFExcelExtractor 实例。可选地,您可以控制是否在输出结果中包含单元格注释、页眉页脚信息和工作表名称。然后调用实例的 Text 属性即可读取 Excel 文件的文本内容。
以下是在 aardio 中实现的等效代码:
import NPOI;
import console.int;
/*
* 从 Excel 2007 格式文件中获取文本内容
* @param filePath Excel 文件路径
* @return 返回 Excel 工作表的文本内容
*/
function getTextFromExcel2007Format(filePath) {
var excelExtractor = null;
try {
var workbook = NPOI.Workbook.Create(filePath);
// 创建 XSSFExcelExtractor 实例
excelExtractor = NPOI.XSSF.Extractor.XSSFExcelExtractor(workbook);
// 可选设置(aardio 中布尔值使用 true/false)
excelExtractor.IncludeCellComments = false; // 是否包含单元格注释
excelExtractor.IncludeHeaderFooter = false; // 是否包含页眉页脚
excelExtractor.IncludeSheetNames = false; // 是否包含工作表名称
}
catch(e) {
// 异常处理
..console.error("读取 Excel 文件时出错:", e);
}
// 确保资源释放
if(excelExtractor) {
var ret = excelExtractor.Text;
excelExtractor.Close();
excelExtractor = null;
return ret;
}
}
// 使用示例
var excelText = getTextFromExcel2007Format("/员工数据.xlsx");
print(excelText);
NPOI.XSSF.Extractor.XSSFExcelExtractor 类来处理 Excel 2007+ 格式文件IncludeCellComments - 是否包含单元格注释IncludeHeaderFooter - 是否包含页眉页脚信息IncludeSheetNames - 是否包含工作表名称Text 属性获取全部文本内容