java中实现图片导入_Java 向表格中导入图片

package test; import java.awt.image.BufferedImage; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import javax.imageio.ImageIO; import org.apache.poi.hssf.usermodel.HSSFClientAnchor; import org.apache.poi.hssf.usermodel.HSSFPatriarch; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; public class TestPOI {     public static void main(String[] args) {         FileOutputStream fileOut = null;         BufferedImage bufferImg = null;         try {             // 先把读进来的图片放到一个ByteArrayOutputStream中,以便产生ByteArray             ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();             bufferImg = ImageIO                     .read(new File(                             "D:\\1346121647928.jpg"));             ImageIO.write(bufferImg, "jpg", byteArrayOut);             // 创建一个工作薄             HSSFWorkbook wb = new HSSFWorkbook();             HSSFSheet sheet1 = wb.createSheet("Sheet1");             // 要导入的图片显示大小198*198像素             HSSFRow row = sheet1.createRow(0);             sheet1.setColumnWidth(0, (int) (35.7 * 198));             row.setHeight((short) (15.625 * 198));             HSSFPatriarch patriarch = sheet1.createDrawingPatriarch();             HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 1023, 255,                     (short) 0, 0, (short) 0, 0);// 1023*255表示占满单元格             // 插入图片             patriarch.createPicture(anchor, wb.addPicture(byteArrayOut                     .toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG));             fileOut = new FileOutputStream("d:/test.xls");             // 写入excel文件             wb.write(fileOut);             fileOut.close();         } catch (IOException io) {             io.printStackTrace();             System.out.println("io erorr : " + io.getMessage());         } finally {             if (fileOut != null) {                 try {                     fileOut.close();                 } catch (IOException e) {                     // TODO Auto-generated catch block                     e.printStackTrace();                 }             }         }     } }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值