日期:2014-05-20 浏览次数:20910 次
POIFSFileSystem fs =new POIFSFileSystem(new FileInputStream(file)); HSSFWorkbook workBook= new HSSFWorkbook(fs); org.apache.poi.hssf.record.RecordInputStream$LeftoverDataException: Initialisation of record 0x894 left 7 bytes remaining still to be read. at org.apache.poi.hssf.record.RecordInputStream.hasNextRecord(RecordInputStream.java:156) at org.apache.poi.hssf.record.RecordFactoryInputStream.nextRecord(RecordFactoryInputStream.java:231) at org.apache.poi.hssf.record.RecordFactory.createRecords(RecordFactory.java:443) at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:285) at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:248) at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:192) at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:174)
public boolean hasNextRecord() throws LeftoverDataException { if (_currentDataLength != -1 && _currentDataLength != _currentDataOffset) { readToEndOfRecord(); } if (_currentDataLength != DATA_LEN_NEEDS_TO_BE_READ) { _nextSid = readNextSid(); } return _nextSid != INVALID_SID_VALUE; } private void readToEndOfRecord(){ while(this._currentDataOffset<this._currentDataLength) readByte(); } }