Это решило проблему, спасибо, я бы никогда не понял это сам.

я есть файл xlsx, который я читаю с помощью apache poi 3.17 в java 6. В одном случае у меня есть ячейка со значением 123456789011. Это считывается в java как NUMERIC CellTypeEnum Cell. Когда я использую DataFormatter, чтобы получить значение ячейки, как это:

DataFormatter formatter = new DataFormatter(Locale.US); String strVal = formatter.formatCellValue(cell);

Строковое значение получается как «1.234567 + 11». Мне нужно реальное значение в ячейке "123456789011". Как я могу получить это?

Я уже пытался использовать BigDecimal в Java для преобразования String, но это возвращает «123456700000», потому что это лучшее, что он может сделать с данной информацией; Это означает, что мне нужно получить правильное значение из фактического объекта ячейки. Я также попытался использовать cell.getNumericCellValue (), но он возвращает double, который имеет слишком малый предел для обработки исходного значения, поэтому он получается как «1.234567E11», что имеет ту же проблему, что и другой метод поиска.

Есть ли способ получить значение в виде строки из исходной ячейки, когда оно введено в xlsx? У меня нет власти над оригинальным xlsx.

Спасибо.

Ответы на вопрос(1)

Ваш ответ на вопрос