java导出excel

//导出Excel
    public String createExcels() throws WriteException, IOException {
        
            HttpServletResponse response=ServletActionContext.getResponse();
            
            String fname = "娱乐项目信息/"+(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())).toString();
            
            OutputStream os = response.getOutputStream();//取得输出流
            
            response.reset();//清空输出流
            
            //下面是对中文文件名的处理
            response.setCharacterEncoding("UTF-8");//设置相应内容的编码格式
            
            fname = java.net.URLEncoder.encode(fname,"UTF-8");
            
            response.setHeader("Content-Disposition","attachment;filename="+fname+".xls");
            
            response.setContentType("application/msexcel");//定义输出类型
            
            String[] ids = idList.split(",");
            
            List<PleasureInfoDto> pleasureInfoDtos = new ArrayList<PleasureInfoDto>();
            
            for(String id:ids){
                
                PleasureInfoDto pleasureInfoDto = new PleasureInfoDto();
                
                pleasureInfoDto.setSpiId(Long.parseLong(id));
                
                List<PleasureInfoDto> pleasureInfoDtosa = pleasureInfoNetService.selectPleasureInfo(pleasureInfoDto);
                
                if(pleasureInfoDtosa != null && pleasureInfoDtosa.size() >0){
                    
                    pleasureInfoDtos.add(pleasureInfoDtosa.get(0));
                    
                }
                
            }

            WritableWorkbook workbook = Workbook.createWorkbook(os);
            
            // 创建新的一页
            WritableSheet sheet = workbook.createSheet("First Sheet", 0);
            // 创建要显示的内容,创建一个单元格,第一个参数为列坐标,第二个参数为行坐标,第三个参数为内容
            
            Label name = new Label(0, 0, "服务编号");
            
            sheet.addCell(name);
            
            Label name2 = new Label(1, 0, "上传时间");
            
            sheet.addCell(name2);
            
            Label name3 = new Label(2, 0, "服务地区");
            
            sheet.addCell(name3);
            
            Label name4 = new Label(3, 0, "服务类型");
            
            sheet.addCell(name4);
            
            Label name5 = new Label(4, 0, "服务名称");
            
            sheet.addCell(name5);
            
            Label name6 = new Label(5, 0, "服务截止日期");
            
            sheet.addCell(name6);
            
            Label name7 = new Label(6, 0, "服务状态");
            
            sheet.addCell(name7);
            
            Label name8 = new Label(7, 0, "服务公司");
            
            sheet.addCell(name8);
            
            Label name9 = new Label(8, 0, "推荐");
            
            sheet.addCell(name9);
            
            if (pleasureInfoDtos != null && pleasureInfoDtos.size() > 0) {
                
                for (int i = 0; i < pleasureInfoDtos.size(); i++) {

                    Label spiId = new Label(0, i + 1,pleasureInfoDtos.get(i).getSpiId()!=null?pleasureInfoDtos.get(i).getSpiId().toString():"暂无");
                    
                    sheet.addCell(spiId);
                    
                    Label createTime = new Label(1, i + 1,pleasureInfoDtos.get(i).getCreateTime()!=null?pleasureInfoDtos.get(i).getCreateTime():"暂无");
                    
                    sheet.addCell(createTime);
                    
                    Label city = new Label(2, i + 1,findCityName(pleasureInfoDtos.get(i).getAreaCode()));
                    
                    sheet.addCell(city);
                    
                    Label type = new Label(3, i + 1,findPleasureInfoType(pleasureInfoDtos.get(i).getSpdRid()));
                    
                    sheet.addCell(type);
                    
                    Label pleasureTitle = new Label(4, i + 1, pleasureInfoDtos.get(i).getPleasureTitle()!=null?pleasureInfoDtos.get(i).getPleasureTitle():"暂无");
                    
                    sheet.addCell(pleasureTitle);
                    
                    Label endTime = new Label(5, i + 1, pleasureInfoDtos.get(i).getEndTime()!=null?pleasureInfoDtos.get(i).getEndTime():"暂无");
                    
                    sheet.addCell(endTime);
                    
                    Label status = new Label(6, i + 1, findStatus(pleasureInfoDtos.get(i).getStatus()));
                    
                    sheet.addCell(status);
                    
                    Label companyName = new Label(7, i + 1, pleasureInfoDtos.get(i).getCompanyName()!=null?pleasureInfoDtos.get(i).getCompanyName():"暂无");
                    
                    sheet.addCell(companyName);
                    
                    Label reserveNums = new Label(8, i + 1, pleasureInfoDtos.get(i).getReserveNums().toString());
                    
                    sheet.addCell(reserveNums);
                }

            }
            // 把创建的内容写入到输出流中,并关闭输出流
            workbook.write();
            
            workbook.close();
            
            os.close();
            
            return NONE;

        }



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值