Apache POIを使用してExcelリーダーを作成しました。この後新しいcellToString(セル)メソッドを作成する代わりに、cell.toString()を使用してexcelセルの値を文字列に直接変換できない理由
cell=sh.getRow(row).getCell(col);
が、私はどのようなタイプのものとすることができる私のExcelシートのセルなどの文字列にセルオブジェクトを変換したいので、私は、一般的な文字列値に変換しています:私は、セルの値を取得することができています。 だから、私はそれを行うことができますだけで書き込むことにより、次のとおりです。
public String cellToString(HSSFCell cell){
int type;
Object result;
type=cell.getCellType();
switch(type){
case 0:
result=cell.getNumericCellValue();
break;
case 1:
result=cell.getStringCellValue();
break;
default:
throw new RuntimeException("There is no support of this type of cell");
}
return result.toString();
}
そして、上記を呼び出します。しかし、私は一般的に、すなわち続いての練習は、以下のような新しいcellToString
メソッドの作成を参照してください
data[row][col]=cell.toString();
を次のような機能があります。
data[row][col]=cellToString(cell);
誰かが私たちが最初のアプローチに従っていない理由を教えてもらえますか?
私の意見では、「Excel」セルに表示されるテキストを取得する必要がある場合、ベストプラクティスは 'DataFormatter'を使用しています。 https://poi.apache.org/spreadsheet/quick-guide.html#CellContentsをご覧ください。 –