Импорт файла Excel не хватает номера

Я использую библиотеку JXL для импорта данных из Excel. У меня есть ячейка со значениями: 8.628282828. Когда я отлаживаю как изображение ниже:

Отладка sheet.getCell (5, i).getContents

Я вижу это тип: NumberRecord и значения правильно: 8.628282828. Но когда я получаю содержимое ячейки:

InputStream is = new ByteArrayInputStream(data);
WorkbookSettings wbSettings = new WorkbookSettings();
wbSettings.setEncoding("CP1252");
Workbook w;
w = Workbook.getWorkbook(is, wbSettings);
Sheet sheet = w.getSheet(0);
for (int i = 1; i < sheet.getRows(); i++) {
sheet.getCell(5,i).getContents();
}

Это 8.628 Как я могу получить точно значение этой ячейки?

2 ответа

Принеси это NumberCell и получить значение как double:

double value = ((NumberCell) sheet.getCell(5,i)).getValue();

В качестве документации для Cell.getContents() состояния:

Быстрая и грязная функция для возврата содержимого этой ячейки в виде строки. Для более сложных манипуляций с содержимым необходимо привести этот интерфейс к правильному подинтерфейсу

Приведите к интерфейсу NumberCell и вызовите getValue(), чтобы получить двойное значение.

Другие вопросы по тегам