Исключение Nullpointer при использовании попытки чтения Excel в Selenium - PullRequest
0 голосов
/ 26 октября 2018

Привет, ребята, я искал везде, где решение, но не могу найти.Почему я получаю нулевое исключение указателя для этого я не знаю.Пожалуйста, сортируйте меня.Он показывает, что путь только неправильный, но я указал его только правильно.

Мой код:

package UsingExcel;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import com.sun.rowset.internal.Row;

public class Demo 
{

    public void ReadExcel(String filepath,String filename,String Sheetname) throws IOException
    {
        File file = new File(filepath); // line 21

        FileInputStream stream = new FileInputStream(file);

        Workbook Mybook = null;

        String FileExtensionnname = filename.substring(filename.indexOf("."));

        if(FileExtensionnname.equals(".xlsx"))
        {
            Mybook = new XSSFWorkbook(stream);
        }
        else if(FileExtensionnname.equals(".xls"))
        {
            Mybook = new HSSFWorkbook(stream);
        }

        Sheet filesheet = Mybook.getSheet(Sheetname);

        int rowcount = filesheet.getLastRowNum()-filesheet.getFirstRowNum();

        for(int i=0;i<rowcount+1;i++)
        {
            org.apache.poi.ss.usermodel.Row row =filesheet.getRow(i);

            for(int j=0;j<row.getLastCellNum();j++)
            {
                System.out.println(row.getCell(j).getStringCellValue()+ "||");
            }

            System.out.println();
        }
    }

    public static void main(String[] args) throws IOException
    {
        Demo excelfile =  new Demo();

        String filepath = System.getProperty("E:\\Mybook.xlsx");

        excelfile.ReadExcel(filepath, "Mybook.xlsx", "DemoExcel");
        }

}

Моя ошибка:

Exception in thread "main" java.lang.NullPointerException
    at java.io.File.<init>(Unknown Source)
    at UsingExcel.Demo.ReadExcel(Demo.java:21)
    at UsingExcel.Demo.main(Demo.java:61)

Надеюсь, вы поняли мою проблему, пожалуйста, решите это.Но когда я тестирую страницу входа с помощью Excel, что никаких проблем не будет, теперь я пытаюсь напечатать на консоли, она не работает.

1 Ответ

0 голосов
/ 26 октября 2018

Ваш путь к файлу должен быть просто

String filepath = "E:\\Mybook.xlsx", не используйте System.getProperty.

Из документов:

Получает системное свойство, обозначенное какуказанный ключ

В метод ReadExcel(...) передается значение NULL, поскольку отсутствует свойство System , определенное как E: \ Mybook.xlsx

...