关于poi生成excel2007主要代码片段
关于poi生成excel2007主要代码片段
成长的小久 发表于1年前
关于poi生成excel2007主要代码片段
  • 发表于 1年前
  • 阅读 15
  • 收藏 0
  • 点赞 0
  • 评论 0
摘要: 解析excel2003与excel2007的区别 及解析步骤。

第一,java生成excel2007

 Excel2007及以上版本,xlsx Java代码生成!需要的四个必须的JAR包poi-3.9-20121203.jar   poi-ooxml-3.9-20121203.jar   poi-ooxml-schemas-3.9-20121203.jar   xbean.jar     dom4j-1.6.1.jar 

 //创建工作薄
   XSSFWorkbook wb=new XSSFWorkbook();
 //用工作薄对象创建工作表(文件表名字为“”测试“”)
    XSSFSheet  sheet =wb.createSheet("测试");

//创建样式对象
   XSSFCellStyle style = wb.createCellStyle();//样式对象            
       style.setFillForegroundColor(HSSFColor.GOLD.index);//设置背景颜色//参数也可以是 (short) 33
        style.setFillPattern(XSSFCellStyle.SOLID_FOREGROUND);        
        style.setVerticalAlignment(XSSFCellStyle.VERTICAL_CENTER);// 垂直
        style.setAlignment(XSSFCellStyle.ALIGN_CENTER); // 居中 
        style.setAlignment(XSSFCellStyle.ALIGN_LEFT);//左右对齐        
        style.setBorderBottom(XSSFCellStyle.BORDER_THIN); //下边框    
        style.setBorderLeft(XSSFCellStyle.BORDER_THIN);//左边框    
        style.setBorderTop(XSSFCellStyle.BORDER_THIN);//上边框    
        style.setBorderRight(XSSFCellStyle.BORDER_THIN);//右边框        
        style.setWrapText(true);//设置自动换行            
        sheet.setColumnWidth(3, 3766); //第一个参数代表列id(从0开始),第2个参数代表宽度值  参考 :"2012-08-10"的宽度为2500

      sheet.setColumnWidth(3, str.length*256);//设置单元格自适应宽度
        CellRangeAddress region1 = new CellRangeAddress(0, 0,  0, 1);// 起始行,结束行,起始列,//结束列
        sheet.addMergedRegion(region1);
        //生成一个字体对象
        XSSFFont font=wb.createFont();
        font.setFontName("仿宋_GB2312");
        font.setItalic(true);//设置斜体            
        font.setFontHeightInPoints((short)12);//设置字体大小
        font.setBoldweight(XSSFFont.BOLDWEIGHT_BOLD);//字体增粗        
       // font.setColor(XSSFColor.YELLOW.index);//字体原色
        font.setTypeOffset(XSSFFont.SS_SUPER);//上标
        font.setTypeOffset(XSSFFont.SS_SUB);//上标
        font.setStrikeout(true);//删除线
        font.setUnderline(XSSFFont.U_SINGLE);//下划线
        XSSFCreationHelper createHelper =(XSSFCreationHelper)wb.getCreationHelper();//超链接
        style.setFont(font);    //将字体对象添加到样式对象中,
        //创建行
        XSSFRow row =sheet.createRow(0);        
        //创建列
        XSSFCell cell=row.createCell(4);
        XSSFCell cell1=row.createCell(0);
        cell1.setCellStyle(style);    //将单元格样式设置为设计好的样式
        cell.setCellStyle(style);
        cell1.setCellValue("第一行的的方法反反复复反复反复反复反复");
        cell.setCellValue("第er行");
        //写出到文件中
        String dir="d:/test.xlsx";
        File file=new File(dir);
        OutputStream os=null;
        try {
            file.createNewFile();
             os=new FileOutputStream(file);
             wb.write(os);
             os.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

共有 人打赏支持
粉丝 0
博文 1
码字总数 427
×
成长的小久
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: