Исключение Biff в Java - PullRequest
       45

Исключение Biff в Java

2 голосов
/ 17 ноября 2009

Когда я пытался прочитать файл Excel на Java, он выдает «исключение biff».

Что это значит? Я пытался найти его в Google, но не смог найти правильного объяснения.

jxl.read.biff.BiffException: Unable to recognize OLE stream

                             at jxl.read.biff.CompoundFile.<init>(CompoundFile.java:116)

                             at jxl.read.biff.File.<init>(File.java:127)

                             at jxl.Workbook.getWorkbook(Workbook.java:221)

                             at jxl.Workbook.getWorkbook(Workbook.java:198)

                             at Com.Parsing.ExcelFile.excel(Extract.java:20)

                             at Com.Parsing.Extract.main(Extract.java:55)

Ответы [ 4 ]

5 голосов
/ 26 октября 2012

Я также столкнулся с подобной проблемой и смог ее исправить.

Я использовал файл .xlsx, и когда я изменил его на файл .xls, он работал просто отлично. Кажется, JXL не поддерживает формат .xlsx.

Пожалуйста, поправьте меня, если кто-то знает, что он поддерживает.

3 голосов
/ 17 ноября 2009

Javadoc для BiffException .

Исключение, возникающее при чтении файла biff.

Это исключение содержит ряд сообщений, которые должны содержать некоторую информацию о причине:

excelFileNotFound        
excelFileTooBig         
expectedGlobals         
passwordProtected         
streamNotFound         
unrecognizedBiffVersion
unrecognizedOLEFile

Изменить:

unrecognizedOLEFile, по-видимому, означает, что в файл встроено что-то , которое невозможно прочитать .

1 голос
/ 20 ноября 2009

Рабочая книга Excel с несколькими листами (начиная с BIFF5) хранится в формате файла составного документа (также известном как «формат файла хранения OLE2» или «формат файла, совместимый с Microsoft Office»). Он содержит несколько потоков для разных типов данных.

Полную документацию формата файлов составных документов можно найти по адресу http://sc.openoffice.org/compdocfileformat.pdf

Я думаю, что исключение означает, что ваша библиотека синтаксического анализа не может ее распознать (например, формат biff5 не может быть проанализирован в POI и Jexcelapi). Вы можете проверить версию своего файла, открыть его в Office и нажать «СОХРАНИТЬ КАК», список форматов в диалоге файлов - это текущая версия файла.

0 голосов
/ 17 ноября 2009

На этой странице упоминается несколько исключений в пакете "biff", которые, возможно, могут дать вам дополнительные подсказки, если вы найдете там свое конкретное исключение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...