如何使用Java Apache POI在Excel中添加标题列?
我正在写一个Java程序,我必须从XML文件中获取数据并将其放入Excel文件中。 在做这个时,我必须创build行标题并相应地添加数据。
我知道如何创build列标题。 我可以这样做:
.... HSSFWorkbook workbook = new HSSFWorkbook(); HSSFSheet sheet = workbook.createSheet("EDR Raw Data"); Row header = sheet.createRow(0); header.createCell(0).setCellValue("Header1"); header.createCell(1).setCellValue("Header2"); header.createCell(2).setCellValue("Header3"); header.createCell(3).setCellValue("Header4"); ....
它创build如下所示的excel文件:
但是我希望我的excel文件如下所示:
我没有办法做到这一点。 单独创build所需数量的行不是个好主意。 有什么办法可以创build一个列,并添加该列中的所有标题?
我试图这样做的方式是:
.... HSSFWorkbook workbook = new HSSFWorkbook(); HSSFSheet sheet = workbook.createSheet("EDR Raw Data"); sheet.createRow(0).createCell(0).setCellValue("header1"); sheet.createRow(1).createCell(0).setCellValue("header2"); sheet.createRow(2).createCell(0).setCellValue("header3"); sheet.createRow(3).createCell(0).setCellValue("header4"); ...
但在我的情况下,我必须给100 +行标签。 所以这不是有效的方法。
只需为每个标题创build一行,并填充每个标题的第一个单元格!
就像是:
String[] headers = new String[] { "Header1", "Header2", "Header3" }; Workbook workbook = new HSSFWorkbook(); Sheet sheet = workbook.createSheet("EDR Raw Data"); for (int rn=0; rn<headers.length; rn++) { Row r = sheet.createRow(rn); r.createCell(0).setCellValue(headers[rn]); }
然后填充数据时,执行sheet.getRow(rownumber)
来获取现有的行,并填充其中感兴趣的剩余单元格