Ошибка анализа номера Excel, но это не число [закрыто]JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Ошибка анализа номера Excel, но это не число [закрыто]

Сообщение Anonymous »

Я использую org.eclipse.persistence.internal.oxm.record.XMLReader и org.apache.poi.xssf.eventusermodel.XSSFSheetXMLHandler.XSSFSheetXMLHandler для анализа электронных таблиц. В данном конкретном случае использования это столбец, который мы будем называть буквенно-цифровыми номерами деталей. Это всегда работало нормально, но сегодня пользователь пытается загрузить лист, содержащий некоторые номера деталей, например «88E0044». Анализатор выдает исключение NumberFormatException для значения. Excel первоначально перейдет на экспоненциальную запись. Принудительное использование текста в Excel с ведущим апострофом или форматированием не помогает. Есть идеи, как это исправить, кроме чтения таблицы по-другому? Я хочу, чтобы значение просто считывалось как строка, а не пыталось преобразовать его в число.

Код: Выделить всё

XMLReader sheetParser = SAXHelper.newXMLReader(new XmlOptionsBean());
ContentHandler handler = new XSSFSheetXMLHandler(styles, null, strings, new SheetHandler(), getFormatter(), false);
sheetParser.setContentHandler(handler);
sheetParser.parse(sheetSource);
Я вижу это исключение только во время отладки, и в отладчике нет трассировки стека. Это NumberFormatException с сообщением «Для входной строки: «88E0044». Похоже, что синтаксический анализатор считывает строки партиями по 100. Он возвращает строки до ошибки, а затем считывает следующую партию из 100.

Подробнее здесь: https://stackoverflow.com/questions/786 ... t-a-number
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»