我有一个从数据库返回的列表类型数据,我想将其写入电子表格。查询中的 Order By 子句按 A、B、C 排序。我想将此有序数据写入同一个 Excel 工作簿中的不同工作表中。请让我知道我该怎么做。我正在使用 POI 将数据写入 Excel。
问问题
449 次
2 回答
1
我想您可以写入 xls 文件。
因此,您可以像这样定义工作表:
public static void exportToXls()
{
Workbook wb = new HSSFWorkbook();
...
Sheet sheetA = wb.createSheet("sheetA");
Sheet sheetB = wb.createSheet("sheetB");
Sheet sheetC = wb.createSheet("sheetC");
...
// export the appropriate list to the appropriate sheet
for (YourObject item : listOrderedByA)
{
rowNo++;
row = sheetA.createRow((short)rowNo);
...
// define the columns
}
// and similarly for the other lists (ordered by B or C)
于 2012-06-07T10:18:03.240 回答
0
谢谢你的回复,但我真正需要的是,如果我的数据是按A、B、C排序的,我需要创建一个新的工作表A、B或C,并在每次我的数据根据按子句排序。这其中也涉及到更多的问题。最后,我最终做的是,我在我的数据库查询中添加了一个变量 -
select distinct CASE WHEN color = 'Red' THEN 'A' WHEN color = 'Blue' THEN 'B' WHEN color = 'Green' THEN 'C' END AS sheetName, <other fetches from DB>....
因此,通过这种方式,我可以检查我的代码是否更改了 sheetName 并据此创建一个新工作表。
谢谢,拉兹
于 2012-06-18T03:56:20.597 回答