[英]Not able to read PPT file using apache.poi library
我想讀取我嘗試使用apache.poi庫API讀取文件的ppt文件。 這就是我嘗試過的。
POIFSFileSystem posF = new POIFSFileSystem(fileInputStream);
它引發以下錯誤
java.io.IOException: Invalid header signature; read 4851293027410584380, expected -2226271756974174256
at org.apache.poi.poifs.storage.HeaderBlockReader.<init>(HeaderBlockReader.java:112)
at org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(POIFSFileSystem.java:151)
這個問題已經在stackoverflow上被問過很多次了,我嘗試了所有建議的解決方案,但是沒有用。
該錯誤告訴您,您的文件畢竟不是PPT文件。 (它不是OLE2文件,它是.PPT所基於的基礎格式)
要弄清楚您的文件實際上是什么,我建議您在附近的Unix框上使用file
實用程序,或者將Apache Tika與TikaCLI和--detect一起使用。 這應該可以幫助您確定文件的內容(提示-它不是.ppt,因此會出現錯誤!),然后您可以確定使用哪個庫來打開文件
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.