Al intentar abrir un fichero con la librería POI de Apache, nos podemos encontrar un con mensaje de error parecido al siguiente:
[ERROR] Invalid header signature; read 0x3231343130323030, expected 0xE11AB1A1E011CFD0 java.io.IOException: Invalid header signature; read 0x3231343130323030, expected 0xE11AB1A1E011CFD0 at org.apache.poi.poifs.storage.HeaderBlockReader.<init>(HeaderBlockReader.java:107) at org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(POIFSFileSystem.java:151)
Este error está provocado porque el objeto espera un objeto de tipo Stream creado a partir de la lectura de un fichero Excel 2003 o anterior (*.xls;*.xlt). Si visitamos la página POIFS File System Internals, hacia el final de la página, en el apartado File System Structures, podemos encontrar el «por qué» de este error.