19
Фев
2018

Заполнение таблицы в Apache POI

Начинаю изучать ApachePOI. Столкнулась с проблемой заполнения таблицы. Код, приведенный ниже, создает две страницы, названия рядов и элементы, такая себе "окантовка" таблицы в файле xls. данные на странице Two такие же. введите сюда описание изображения

  public class Excel {
    Workbook wb = new XSSFWorkbook();
    Sheet sheet;
    public void Excel() throws Exception {
 ArrayList<Integer> num = new ArrayList<>();
        for(int i =1;i<=30;i++) {
            num.add(i);
        }
        ArrayList<String> strings = new ArrayList<>();
        strings.add("One");
        strings.add("Two");
        ArrayList<Integer> elements = new ArrayList<>();
        elements.add(1);
        elements.add(2);
        elements.add(3);
        elements.add(4);
        elements.add(5);
        ArrayList<String> names = new ArrayList<>();
        names.add("Name1");
        names.add("Name2");
        names.add("Name3");

              for (int i = 0; i < strings.size(); i++) {//названия страниц
            sheet = wb.createSheet(strings.get(i));
            Row row = sheet.createRow(0);
            row.createCell(0).setCellValue("Count of elements");

            for (int cellCounter = 1; cellCounter <= elements.size(); cellCounter++) {
                    row.createCell(cellCounter).setCellValue(elements.get(cellCounter - 1));
                }
                   for (int rowCounter = 1; rowCounter <= names.size(); rowCounter++) {
                sheet.createRow(rowCounter).createCell(0).setCellValue(names.get(rowCounter-1));
                  for(int j=0; j<=num.size(); j++){
                      int cellIndex=1;
                      sheet.createRow(rowCounter).createCell(cellIndex).setCellValue(j);
                  }

                sheet.autoSizeColumn(0);
                       }
                   }
                FileOutputStream fileOut = new FileOutputStream("C:/Users/Home/Desktop/table.xls");
                wb.write(fileOut);
                fileOut.close();
            }
        }

теперь вопрос:допустим, есть массив чисел от 1 до 30. и эти числа нужно разместить, что бы получилось так: введите сюда описание изображения и введите сюда описание изображения как это сделать? У меня если что-то и получается, то пропадает часть уже созданной таблицы. Но целую таблицу не знаю как сделать.

Источник: https://ru.stackoverflow.com/questions/787162/%D0%97%D0%B0%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D1%8B-%D0%B2-apache-poi

Тебе может это понравится...

Добавить комментарий