2017-07-06 63 views
0

我試圖讀取通過selenium webdriver從我們的應用程序下載的.xls文件(MS 97-20003 Worksheet)。但我得到以下錯誤:如何通過Selenium Webdriver閱讀MS 97-2003工作表?

「org.apache.poi.poifs.filesystem.NotOLE2FileException:所提供的數據似乎是一個原始的XML文件格式,例如Office 2003的XML不支持」

而且當我手動打開它時,我收到以下消息:

「您試圖打開的文件'ReportXX'採用與文件擴展名指定的格式不同的格式.verify文件未損壞,並且來自一個值得信賴的來源.....'。

通過點擊'是'我可以打開它並驗證內容

請參閱下面的代碼,讓我知道如何解決它。提前致謝!!

InputStream ExcelFileToRead = null; 
    Workbook wb = null; 
    File file = new File("C:\\Users\\abcdef\\Downloads\\Report.xls"); 

    if (file.exists()) { 

     ExcelFileToRead = new FileInputStream(file); 

     wb = new HSSFWorkbook(ExcelFileToRead); 
     System.out.println(wb.getNumberOfSheets()); 

     for (int i = 0; i < wb.getNumberOfSheets(); i++) { 

      System.out.println("Sheet name: " + wb.getSheetName(i)); 
      Sheet sh = wb.getSheetAt(i); 
} 
+2

這意味着您正在嘗試下載的文件實際上並不是xls。它可能是一個xlsx。所以問題似乎在生成該excel文件的服務器中。 – litelite

回答

0

您可以我們JXL.jar的.jar文件哪個更適合閱讀的Microsoft Excel工作表 的POI.jar您正在使用是對的.xlsx格式更支持的.xls文件只是嘗試這個。

相關問題