2015-07-08 4 views
1

Я хочу включить мой класс для доступа и получения информации из книги Excel с помощью apache POI. Я использую:Основное использование конструктора XSSFWorkbook()

XSSFWorkbook mybook = new XSSFWorkbook("Filepath"); 

Но это выбрасывает «необработанное исключение типа ioexception».

Я уверен, что это что-то очень очевидное, но я не понимаю, почему это не работает. Конструктор должен быть только XSSFWorkbook() согласно документации apachePOI. Поэтому я знаю, что мне не хватает чего-то фундаментального.

+1

Вы даже поймали исключение? –

+1

да я добавил, что потом и он все еще не работал. Я закончил использовать другой подход и теперь могу получить доступ к моей книге. –

ответ

1

Если вы хотите, чтобы читал файл excel, этот файл должен существовать и быть доступен для чтения. Я сомневаюсь, что у вас есть файл excel под названием «Filepath» в вашем текущем рабочем каталоге, поэтому вы получаете IOException.

Изменить путь к чему-то, что указывает на настоящий файл excel.

Как и в сторону, вы должны использовать новый SS Usermodel, так что ваш код станет:

Workbook mybook = WorkbookFactory.create(new File("/path/to/file.xlsx")); 
+0

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

2

Если вы просто читаете xlsx файл.

 try { 

      Workbook workbook = new XSSFWorkbook(OPCPackage.open(path)); 
      Worksheet worksheet = workbook.getSheet("Sheet1"); 

      //rest of your logic 

     } catch (Exception ex) { 
      ex.printStackTrace(); 
     } 

Убедитесь, что файл на filePath существует.

Смежные вопросы