一つだけ確認したいことがあります。
Apache POI API には、行やセルなど、スプレッドシートの列用の組み込みのコレクション/オブジェクトがありますか?
または、自分で作成し、列にすべてのセルを追加して、並べ替えなどを行う必要がありますか? 他に良い方法はありますか?
一つだけ確認したいことがあります。
Apache POI API には、行やセルなど、スプレッドシートの列用の組み込みのコレクション/オブジェクトがありますか?
または、自分で作成し、列にすべてのセルを追加して、並べ替えなどを行う必要がありますか? 他に良い方法はありますか?
Excel 形式は列ベースではなく行ベースです。ファイルは行の各セルが順番に書き込まれ、その後に数ビットの行情報が続き、次に次の行のセルが順番に書き込まれます。
したがって、列単位で何かをしたい場合は、セルを自分で収集する必要があります。それはおそらく次のようなものでしょう:
int columnWanted = 3;
List<Cell> cells = new ArrayList<Cell>();
for (Row row : sheet) {
Cell c = row.getCell(columnWanted);
if (c == null || c.getCellType == Cell.CELL_TYPE_BLANK) {
// Nothing in the cell in this row, skip it
} else {
cells.add(c);
}
}
// Now use the cells array