繁体   English   中英

将数据写入Excel工作表Java

[英]Write data into Excel sheet java

我有3个列表,分别是list1,list2和list3。 我想在Excel工作表中将这些列表显示为3列。 例如,列表1中的值应显示在Excel工作表的第一列中。 我将所有3个列表添加到最终列表中,如下所示,并且能够将它们显示为单独的行,不知道如何显示为列。 我正在使用apachepoi。

List<List> finalList = new ArrayList<List>();
     finalList .add(list1);
     finalList .add(list2);
 WritingToExcelFile(List<List> l1) throws Exception {  //passing finalList here
    try {
        for (int j = 0; j < l1.size(); j++) {
            Row row = firstSheet.createRow(rownum);
            List<String> l2 = l1.get(j);
            for (int k = 0; k < l2.size(); k++) {
                Cell cell = row.createCell(k);
                cell.setCellValue(l2.get(k));
            }
            rownum++;
        }
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
    }
}

假设您的列表大小相同,为什么不这样:

Sheet s = wb.createSheet();
for (int i=0; i<firstList.size(); i++) {
   Row r = s.createRow(i);
   r.createCell(0).setCellValue( list1.get(i) );
   r.createCell(1).setCellValue( list2.get(i) );
   r.createCell(2).setCellValue( list3.get(i) );
}

如果您的列表长度可能不一样,则添加额外的错误处理;如果您需要对列表内容进行格式/日期/等操作,则添加额外的逻辑

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM