java.io.IOException:标头签名无效;阅读1688935826934608,预计-2226271756974174256

时间:2014-07-07 11:14:56

标签: java

我正在从excel文件中读取数据。没有错误,但我得到了异常

 like Invalid header signature; read 1688935826934608, expected -2226271756974174256
 is at an error in code a=or in excel file

这是我的代码:

import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.hssf.usermodel.HSSFCell; 
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook; 
import org.apache.poi.hssf.usermodel.HSSFRow;
public class Exexel1
{
    public static void main( String [] args ) 
    { 
     try
      {  
        InputStream input = new BufferedInputStream( new FileInputStream("C:/Users/Administrator/Desktop/sample.xlsx"));
        POIFSFileSystem fs = new POIFSFileSystem( input );
        HSSFWorkbook wb = new HSSFWorkbook(fs);
        HSSFSheet sheet = wb.getSheetAt(0); 
        Iterator rows = sheet.rowIterator();
        while( rows.hasNext() ) 
        {
            HSSFRow row = (HSSFRow) rows.next();
            System.out.println("\n");
            Iterator cells = row.cellIterator();
            while( cells.hasNext() ) 
            {
                HSSFCell cell = (HSSFCell) cells.next();
                if(HSSFCell.CELL_TYPE_NUMERIC==cell.getCellType()) 
                    System.out.print( cell.getNumericCellValue()+" " );
                else if(HSSFCell.CELL_TYPE_STRING==cell.getCellType())
                    System.out.print( cell.getStringCellValue()+" " ); 
                else if(HSSFCell.CELL_TYPE_BOOLEAN==cell.getCellType())
                    System.out.print( cell.getBooleanCellValue()+" " );
                else if(HSSFCell.CELL_TYPE_BLANK==cell.getCellType()) 
                    System.out.print( "BLANK " ); 
                else System.out.print("Unknown cell type");
            }
        }
    } catch ( IOException ex )
       {
        ex.printStackTrace();
        }
 }
}

0 个答案:

没有答案