2013-10-14 5 views
0

У меня есть 3 списка, а именно list1, list2 и list3. И я хочу отображать эти списки в листе excel как 3 столбца. Например, значения в списке 1 должны отображаться в первом столбце листа Excel. Я добавляю все 3 списка в последний список, как показано ниже, и могу отображать их как отдельные строки, и не знаю, как я могу отображать их в виде столбцов. Я использую apachepoi.Запись данных в лист Excel java

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 { 
    } 
} 

ответ

2

Предполагая, что ваши списки все же размера, почему бы не что-то вроде:

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)); 
} 

Добавить дополнительную обработку ошибок, если ваши списки не может быть одинаковой длины, и дополнительная логика, если вам нужно сделать форматирование/даты/etc для содержимого списка

+0

Спасибо. Это решило мой problam ... –

+0

Вот, внутри списка у вас есть 1 элемент для каждого get (i) .. А что, если список содержит список элементов? .. – avidCoder

Смежные вопросы