Java - Apache POI - Проблемы с заполнением строк и ячеек циклами (Excel)
Там'хэш-карта:
HashMap matrix = new HashMap();
Я хочу заполнить лист Excel по этому шаблону:
hashkey1 | hashkey2 | hashkey3 | hashkey4
value1-1 | value2-1 | value3-1 | value4-1
value1-2 | value2-2 | value3-2 | value4-2
value1-3 | value2-3 | value3-3 | value4-3
value1-4 | value2-4 | value3-4 | value4-4
value1-5 | value2-5 | value3-5 | value4-5
"HASHKEYS» являются "Категории», и каждый ключ имеет свой собственный ArrayList. Каждый строковый элемент ArrayLists должен быть нарисован под соответствующим ключом.
Вот'Фактический код:
int keyCell = -2;
int row = 5;
Row keyRow = worksheet.createRow(4);
Row valueRow = null;
for (Map.Entry e : matrix.entrySet()) {
keyRow.createCell(keyCell += 2).setCellValue(e.getKey());
for (String s : e.getValue()) {
if ((row - 5) < (e.getValue().size())) {
valueRow = worksheet.createRow(row += 1);
valueRow.createCell(keyCell).setCellValue(s);
} else {
valueRow.createCell(keyCell).setCellValue(s);
}
}
}
Это работает прекрасно, за исключением того факта, что результат идет по этой схеме:
hashkey1 | hashkey2 | hashkey3 | hashkey4
value1-1 | | |
value1-2 | | |
value1-3 | | |
value1-4 | | |
value1-5 | value2-5 | value3-5 | value4-5
Я думаю, что это работает именно так, как я хочу, но ячейки стираются в каждом цикле из-за новой строки, которая создается в каждом цикле. Это очень сложная проблема. Мне было очень трудно прийти к этому, и теперь яЯ абсолютно застрял. Ничего не работает Клетки ВСЕГДА стираются.
Ну, я надеюсь, что это не слишком распространенная тема. Я действительно благодарю вас всех за любую помощь.