kz.greetgo.msoffice.xlsx.parse.Sheet Maven / Gradle / Ivy
Show all versions of greetgo.msoffice Show documentation
package kz.greetgo.msoffice.xlsx.parse;
import java.util.List;
/**
* Лист электронной таблицы
*
* @author pompei
*/
public interface Sheet {
/**
* Внутренее имя листа
*
* @return имя
*/
String name();
/**
* Проверяет лист на активность. Активным может быть только один лист
*
* @return true - активный, false - иначе
*/
boolean isActive();
/**
*
* Сканирует ячейки. Сканирование производиться сверху-в-низ, слева-на-право (т.е. вначале все
* ячейки слева-на-право первой сверху непустой строки, потом - второй сверху непустой и т.д.).
*
*
* CellHandler предоставляет всегда один и тот-же объект, только с разными значениями.
*
*
* Пустые ячейки не предоставляются.
*
*
* @param handler обработчик новой ячейки
*/
void scanCells(CellHandler handler);
/**
*
* Загружает определённую строку
*
*
*
* Этот метод медленный (правда от величины номера строки скорость не зависит, т.е. первая строка
* читается с такой-же скоростью как и последняя). Этот метод пригоден для получения нескольких
* строк. Для полного сканирования следует использовать методы {@link #scanRows(int, RowHandler)}
* или {@link #scanCells(CellHandler)}
*
*
* @param row индекс строки: самая верхнаяя имеет индекс 0, следующая - 1, потом - 2, и т.д.
* @return список ячеек. Первый элемент списка (с индексом 0) предоставляет ячейку из колонки A,
* второй элемент списка (с индексом 1) - из B, следующий - из C, и т.д.
*/
List loadRow(int row);
/**
*
* Сканирует строки сверху-в-низ
*
*
*
* RowHandler предоставляет всегда один и тот-же объект, только с разными значениями.
*
*
* @param colCountInRow запрашиваемый размер строки (остальные ячейки будут обрезаться и игнорироваться)
* @param handler обработчик новой строки
*/
void scanRows(int colCountInRow, RowHandler handler);
}
|