java处理excel文件

jar包支持:

//创建一个workbook,对应一个Excel文件

XSSFWorkbook wb = new XSSFWorkbook();  //XSSFWorkbook支持.xlsx文件,HSSFWorkbook只支持.xls文件。

XSSFSheet sheet = wb.createSheet(“1”);

sheet.setColumnWidth(col,width);//width = 字符长度*256,表示单元格宽多少字符


// 在sheet中添加表头行
                XSSFRow row = sheet.createRow(0);
                // 创建单元格样式,并设置值表头 设置表头居中
                XSSFCellStyle style = wb.createCellStyle();
                style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
                style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 垂直居中

     XSSFCell cell = row1.createCell(0);
                cell.setCellValue("日期");
                cell.setCellStyle(style);
    //画图器,一个sheet工作表自能创建一个
 XSSFDrawing patriarch = sheet.createDrawingPatriarch();      

 /**
                     * anchor主要用于设置图片的属性  
                     * 该构造函数有8个参数
                     * 前四个参数是控制图片在单元格的位置,分别是图片距离单元格left,top,right,bottom的像素距离
                     * 后四个参数,前连个表示图片左上角所在的cellNum和 rowNum,后天个参数对应的表示图片右下角所在的cellNum和 rowNum,
                     * excel中的cellNum和rowNum的index都是从0开始的
                     */
                    XSSFClientAnchor anchor1 = new XSSFClientAnchor(0, 0, 0, 0,(short) 0, (j * (34 + picHight) + 34), (short) picWidth, (j * (34 + picHight) + 34 +picHight));

                    //anchor.setAnchorType(3);     
                    //插入图片    
                    patriarch.createPicture(anchor1, wb.addPicture(byteArrayOut1.toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG));   
     // 将文件存到指定位置
        try {
            File file = new File(FILEOUT_PATH);
            if(!file.exists()){
                file.createNewFile();
            }
            FileOutputStream fout = new FileOutputStream(file);
                wb.write(fout);
                fout.close();
            } catch (Exception e) {
                e.printStackTrace();
            }   

 

 

              

posted @ 2017-11-07 09:48  zengjinping  阅读(166)  评论(0编辑  收藏  举报