我有一个要求,其中动态数据来自excel,我需要提取头(列)名称(第1行)到数组列表。
按照以下步骤执行:
// Get the workbook instance for XLS file
XSSFWorkbook workbook = new XSSFWorkbook(file);
// Get the first sheet from the workbook
XSSFSheet firstSheet = workbook.getSheetAt(0);
// Get the first row from the sheet
Row row = firstSheet.getRow(0);
// Create a List to store the header data
ArrayList<String> headerData = new ArrayList<>();
// Iterate cells of the row and add data to the List
for (Cell cell : row) {
switch (cell.getCellType()) {
case NUMERIC:
if (HSSFDateUtil.isCellDateFormatted(cell)) {
DataFormatter dataFormatter = new DataFormatter();
headerData.add(dataFormatter.formatCellValue(cell));
} else {
headerData.add(String.valueOf(cell.getNumericCellValue()));
}
break;
case STRING:
headerData.add(cell.getStringCellValue());
break;
case BOOLEAN:
headerData.add(String.valueOf(cell.getBooleanCellValue()));
break;
default:
headerData.add("");
break;
}
}
// Print the List
System.out.println(headerData);
如有任何疑问/问题,请随时发表意见。
问题内容: 如何使用Apache POI在Excel文件中获取列名,以确保按预期顺序排列列。 问题答案: 或这个: 行索引从0开始。
问题内容: 为了进行一些统计分析,我需要在Excel工作表的列中提取值。我一直在使用Apache POI包从Excel文件中读取数据,当需要迭代行时,它可以很好地工作。但是我找不到关于在API(链接文本)或通过Google搜索获取列的任何信息。 由于我需要获取不同列的最大值和最小值并使用这些值生成随机数,因此,无需选择单个列,唯一的选择是遍历行和列以获取值并一一比较。听起来不那么省时。 关于如何解
问题内容: 伙计们,我目前正在使用POI 3.9库来处理excel文件。我知道该函数,该函数在Excel文件中返回许多行。 唯一的问题是返回一个从0开始的数字。 因此,如果Excel文件使用前3行,则返回2。如果Excel文件只有1行,则返回0。 Excel文件完全为空时,会发生此问题。仍然返回0,所以我无法确定Excel文件是否具有1行数据,或者其是否为空。 那么如何检测Excel文件是否为空?
伙计们,我正在使用POI 3.9库来处理excel文件。我知道函数,它在Excel文件中返回许多行。 唯一的问题是返回一个计数从0开始的数字。 因此,如果Excel文件使用前3行,返回2。如果Excel文件只有一行,返回0。 当Excel文件完全为空时,就会出现问题仍然返回0,因此我无法确定Excel文件是否有1行数据,或者是否为空。 那么,如何检测Excel文件是否为空?
我正在使用Apache POI将数据导出到Excel文件中。在一个奇怪的需求中,我需要使用这个POI在Excel中嵌入一个文件。我有这个文件,可以将其作为流或字节数组。在谷歌搜索了很多时间后,我怀疑POI是否真的支持我的需求。我们能把文件嵌入Excel吗?-( 干杯,阿诺普
我正在使用poi(java)创建一个excel(.xlsx)文件。创建excel文件后,我看到excel文件的作者是“Apache POI”。有什么办法可以改变吗? 这是我用来创建excel文件的代码。。。