XSSFSheet
(Javadoc XSSFSheet) のメソッドはaddIgnoredErrors(...)
です。 SXSSFSheet
(Javadoc SXSSFSheet)にはこのメソッドがありません。Apache POI:SXSSFSheetのaddIgnoredErrors(...)機能の使用方法
SXSSFSheet
ベースのシートでエラーを無視するにはどうすればよいですか?
私は105000行があり、XSSFSheet
はメモリを爆破するので、XSSFSheet
を使用することはできません。
テーブルには数字だけで構成されるテキストフィールドを配置します。 Shitty Excelは、このセルの警告Number stored as text
を表示します。 CellType
をSTRING
に設定し、フォーマットをText "@"
に設定しても、順序は関係ありません。
最小実行可能なデモ:
public void run() {
try {
final SXSSFWorkbook workbook = new SXSSFWorkbook(-1);
final DataFormat dataFormat = workbook.createDataFormat();
CellStyle styleDef;
styleDef = workbook.createCellStyle();
styleDef.setDataFormat(dataFormat.getFormat("@"));
final SXSSFSheet sheet = workbook.createSheet();
final SXSSFRow row = sheet.createRow(0);
final SXSSFCell cell = row.createCell(0);
final String text = "123";
cell.setCellType(CellType.STRING);
cell.setCellValue(text);
cell.setCellStyle(styleDef);
workbook.write(new FileOutputStream("test.xlsx"));
workbook.close();
// Hint from Axel Richter, to make it a full working example
workbook.dispose();
} catch (final Exception e) {
e.printStackTrace();
}
}