我有从数据库返回的列表类型数据,我想将其写入电子表格。查询中的Order By子句按A,B,C顺序排列。我想将此有序数据写入同一excel工作簿中的不同工作表中。请让我知道如何做到这一点。我正在使用POI将数据写入Excel。
答案 0 :(得分: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)
答案 1 :(得分: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的更改并根据它创建一个新工作表。
谢谢, Raaz