Zian Ziyad Ответов: 3

Чтение файла excel на java


Я хочу прочитать файл excel на java. Я Хава скачал его jxl.jar файл и я установили путь к классу в eclipse.Но я не могу выполнить программу, потому что она бросает BiffException. Подобный этому:
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 excel.read(excel.java:40)
    at excel.main(excel.java:69)

Могу ли я узнать, почему он бросает исключение и как я могу это решить?

Nountylegre

Попробовать это Библиотека Excel для Java:

импортировать com.gembox.работы с электронными таблицами.*;
// ...

ExcelFile ef = ExcelFile.load("SimpleTemplate.xlsx");

// Выполните итерацию по всем листам в книге Excel.
для (ExcelWorksheet sheet : ef.getWorksheets()) {
// Перебираем все строки на листе Excel.
для (строка ExcelRow : лист.метод getrows()) {
// Перебираем все выделенные ячейки в строке в Excel.
для (ExcelCell cell : row.getAllocatedCells()) {
Системы.из.код println(сотового.думою());
}
}
}

Код взят из этого примера для чтение файла Excel на Java.

3 Ответов

Рейтинг:
2

Ramalinga Koushik

Книга Excel с несколькими листами (начиная с BIFF5) хранится с использованием составного формата файла документа (также известного как OLE2 storage file format или Microsoft Office compatible storage file format). Он содержит несколько потоков для различных типов данных.
Полную документацию по формату составных файлов документов можно найти по адресу

http://sc.openoffice.org/compdocfileformat.pdf[^]

Я думаю, что исключение означает, что ваша библиотека синтаксического анализа не может распознать его(например:формат biff5 не может быть проанализирован в POI и Jexcelapi). Вы можете проверить версию своего файла,открыть его в Office и нажать кнопку "Сохранить как", список форматов в filedialog - это текущая версия файла.


Рейтинг:
1

Member 14757115

Я столкнулся с аналогичной ошибкой при чтении имени файла с использованием приведенного ниже синтаксиса в JAVA

Workbook objworkBook = Workbook.getWorkbook(файл);


Решение: в моем случае я просто исправил имена столбцов в загруженном шаблоне, и теперь он работает нормально


Рейтинг:
0

Vinod Kumar Chauhan

Исключение BiffException означает, что API jexcel не может распознать формат файла и используемый файл U R. Я также столкнулся с той же проблемой в Office 2010.

Затем я решил эту проблему, просто сохранив файл как файл office 2003-7 .xls. Это может быть проблема b в office10 или другом случае, но если u сохранит файл как office 2003-7, то я надеюсь, что код ur также будет работать.