Workbook wb=Workbook.getWorkbook(is);//is是流 int n = wb.getSheet(0).getNumberOfImages();//获得第一个sheet中的图片数目 Image img=wb.getSheet(0).getDrawing(i);//取第一个sheet中的第i个图片(插入时间上的第i个) byte[] bytes=img.getImageData();//从图片中取出数据 for(int j=0;j<4;j++){ header+=Integer.toHexString(bytes[j]&0x0ff);//从数据中取前面几个字节,用来判断文件类型 } int row=(int) (img.getRow()+0.5); //图片所在行数,从0开始 new ByteArrayInputStream(bytes);//将数组转回流
按理说img.getImageFile()会返回File类型,然后可以取得文件名和扩展名,但是实际上只能取得文件名