2016-07-19 4 views
0

. Bitte lesen Sie den Apache POI-Java-Code, um die .xls-Datei zu lesen.Die Excel-Datei konnte nicht mit Apache POI gelesen werden - Ausnahme

Beim Lesen der .xls-Datei mit Java Apache POI erhalte ich den folgenden Fehler in der Java-Konsole.

java.io.IOException: Ungültige Header-Signatur; lesen 0x6C6D783F3CBFBBEF, erwartet 0xE11AB1A1E011CFD0 - Ihre Datei scheint kein gültiges OLE2-Dokument zu sein

Ich kann die Excel-Datei manuell öffnen, ohne dass es zu Problemen kommt. Haben wir die Lösung, dies zu überwinden? Ich bin völlig aus Ideen, so dass jede Hilfe/Zeiger sehr geschätzt werden :)

+0

Mögliche Duplikat von [Ungültige Header-Signatur; IOException mit Apache POI auf Excel-Dokument] (http://stackoverflow.com/questions/3677925/invalid-header-signature-ioexception-with-apache-poi-on-excel-document) – soorapadman

+0

Bitte verlinken Sie nicht mit den Fragen, die hat keine richtige Antwort. habe bereits diese Links gesucht und poste diese –

Antwort

-1
FileInputStream fis = new FileInputStream(new File(yourpath+"/WebContent/ProductUpload.xlsx")); 
     XSSFWorkbook workbook = new XSSFWorkbook (fis); 
     int numberOfSheets = workbook.getNumberOfSheets(); 

     for(int i=0; i < numberOfSheets; i++){ 

      XSSFSheet sheet = workbook.getSheetAt(i); 
       Iterator ite = sheet.rowIterator(); 
       while(ite.hasNext()){ 
        Row row = (Row)ite.next(); 
         Iterator<org.apache.poi.ss.usermodel.Cell> cite = row.cellIterator(); 
         while(cite.hasNext()){ 
          org.apache.poi.ss.usermodel.Cell cell = cite.next(); 

          } 

       } 
     } 
+0

Würde es Ihnen etwas ausmachen, kompletten Code bitte gokul –

+0

In Ihrem Fall verwenden Sie HSSFWorkbook – Gokul

+0

Der obige Code funktioniert nicht für das Problem, das ich erwähnte. Könnten Sie bitte vorschlagen, wo Sie den unten stehenden Code hinzufügen, den Sie vorgeschlagen haben, ein paar Minuten zurück Gokul? response.setContentType ("application/vnd.ms-excel"); –

Verwandte Themen