2017-01-10 6 views
-1

У меня возникли проблемы с чтением данных из ранее существовавшего файла Excel.Чтение данных из ранее существовавшего файла Excel в Java

Пример имя_файла "Доноры по фамилиям - Чт Dec 15 08/20/40 PST 2016.xls"

Это то, что мой метод выглядит следующим образом:

public void addDonorsFF() throws IOException 
{ 
    JTextField a = new JTextField(20); 
    Object[] message = {"Enter File Name:", a, "\nIt is best to directly copy paste the file name, including .xls \nYou cannot import Shipping files."}; 
    int option = JOptionPane.showConfirmDialog(null, message, "Select File", JOptionPane.OK_CANCEL_OPTION); 
    if (option == JOptionPane.OK_OPTION) 
    { 
     String fileName = (String)a.getText(); 
     FileInputStream file = new FileInputStream(new File(fileName)); 

     //Create Workbook instance holding reference to .xls file 
     HSSFWorkbook workbook = new HSSFWorkbook(file); 

     //Get sheet from the workbook 
     HSSFSheet sheet = workbook.getSheetAt(0); 

     for(int i = 1; i < sheet.getPhysicalNumberOfRows(); i++) 
     { 
      Row row = sheet.getRow(i); 

      for(int j = 0; j < row.getPhysicalNumberOfCells(); j++) 
      { 
       Cell cell = row.getCell(j); 

       //Some code that uses the data in the cell and puts it in a "donor" object; 
      } 
     } 
     workbook.close(); 


    } 
} 

Я знаю, файл существует для некоторых, но когда я запускаю программу, я получаю эту ошибку:

Exception in thread "main" java.io.FileNotFoundException: Donors By Last Name - Thu Dec 15 08/20/40 PST 2016.xls (No such file or directory)

at java.io.FileInputStream.open0(Native Method)

at java.io.FileInputStream.open(FileInputStream.java:195)

at java.io.FileInputStream.(FileInputStream.java:138)

at Directory.addDonorsFF(Directory.java:115)

at Driver.main(Driver.java:24)

Я надеюсь, что есть что-то простое, это просто будет у меня над головой, потому что я новичок. Есть ли у вас какие-либо предложения?

+0

Где находится файл? – RamPrakash

+0

Мой рабочий стол @RamPrakash – kitkat

+0

имя вашего файла содержит пробел? –

ответ

0

Вы говорите, что ваш файл находится на вашем рабочем столе, но вы не полностью определили его в своем имени файла для открытия. Это должно быть что-то вроде «C: \ users \ myname \ desktop \ Donors ...» (если Windows).

Как вы ввели имя файла, оно будет отображаться только в текущей папке, в которой вы запускаете приложение для файла.