POIイベントで非常に大きなExcelをインポートします。すべてのコンテンツを取得しましたが、セルの背景色は取得していません。
ExtendedFormatRecordsを試しましたが(ここで説明)、行番号と列番号の情報を持つ前のセルがどれであるかを識別できません。
私の場合、NumberRecordsの色が必要です!
これが私が試した方法です:
switch (record.getSid()) {
case BOFRecord.sid:
break;
case BoundSheetRecord.sid:
BoundSheetRecord bsr = (BoundSheetRecord) record;
System.out.println("New sheet named: " + bsr.getSheetname());
break;
case RowRecord.sid:
break;
case NumberRecord.sid: // Contains a numeric cell value
NumberRecord numrec = (NumberRecord) record;
row = numrec.getRow();
col = numrec.getColumn();
//Do something
break;
case ExtendedFormatRecord.sid:
ExtendedFormatRecord efr = (ExtendedFormatRecord) record;
if (previousSid == NumberRecord.sid) {
// row = previousRecord.getRow();
// col = previousRecord.getColumn();
// System.out.println("row: " + row + " column: " + col);
System.out.println("ExtendedFormat "+efr.getFillForeground() + "");
} else {
System.out.println("ops! not that");
}
break;
//other cases
...
}//end switch
previousSid = record.getSid();
if (previousRecord != record) {
previousRecord = null;
}
誰か助けてもらえますか!?
ありがとう!