CellSet.getCell(index)
на самом деле позволяет вам получить доступ к любой ячейке, а не только к тем, которые находятся в первом столбце. Если есть 2 столбца и 3 строки, то порядковые номера ячеек следующие:
Col0 Col1
Row0 0 1
Row1 2 3
Row2 4 5
Как видите, для чтения первого столбца ("Col0") нужно прочитать индексы 0, 2, 4, а для чтения второго столбца ("Col1") нужно прочитать индексы 1, 3, 5.
Если от такого растрового сканирования у вас болит голова, попробуйте вместо этого использовать cellSet.getCell(List<Integer>)
API. Это позволяет указать независимые координаты для каждой оси. Например, чтобы прочитать строку 2, столбец 1, напишите cellSet.getCell(Arrays.asList(2, 1))
. Помните, что все индексы отсчитываются от 0, поэтому верхний левый угол равен (0, 0).
Чтобы распечатать значения второго столбца (столбец № 1, отсчитываемый от 0), напишите следующее:
CellSet cellSet;
CellSetAxis rowsAxis = cellSet.getAxes().get(1);
for (int i = 0; i < rowsAxis.getPositionCount(); i++) {
Cell cell = cellSet.getCell(Arrays.asList(1, i));
System.out.println(cell.getFormattedValue());
}
person
Julian Hyde
schedule
06.04.2016