public String exportExcel(long id) {
String preeReviewName = "文件名"; String filePath = 路径名;
WritableWorkbook wwb =null;
try {
wwb = Workbook.createWorkbook(new File(filePath + preeReviewName +".xls"));
writeReviewGeneral(wwb, id);
//一个Excel表若有多个sheet页,可以加多个
wwb.write();
wwb.close();
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return preeReviewName;
} private void writeReviewGeneral(WritableWorkbook wwb,long id){
//获取数据库的数据
PreeReviewInfo result = preeReviewInfoDS.getPreeReviewInfo(id).getT();
//数据库各个字段的值放进List
List<String> list = new ArrayList<String>();
list.add(result.getPreeReviewName());//项目名称
list.add(result.getPreeReviewTarget());//评审对象
list.add(ReviewTypes.getDescription(result.getPreeReviewType()));//评审方式
list.add(result.getPreeReviewScale());//评审规模
list.add(result.getProcessName(););//项目当前阶段:所处过程
list.add(result.getPreeCompere());//主持人
list.add(result.getDocumentCreator());//作者
list.add(result.getPreeRegistrar());//记录员
list.add(result.getPreeActor());//评审员
list.add(result.getExpert());//关键资源:专家
try {
WritableSheet sheet = wwb.createSheet("评审概况",);
//设置头部格式
WritableCellFormat headerFormat = getExcelHeadStyle();
//设置内容格式
WritableCellFormat contentFormat = getExcelContentStyle();
for(int i =; i < list.size(); i++){
sheet.setColumnView(, );//列宽
sheet.setColumnView(, );//列宽 sheet.setRowView(i, ); //行高
sheet.addCell(new Label(,i,ExportSummary.reviewGeneral[i],headerFormat));
sheet.addCell(new Label(,i,list.get(i),contentFormat));
} } catch (RowsExceededException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}
} private WritableCellFormat getExcelHeadStyle(){
WritableFont font = new WritableFont(WritableFont.createFont("宋体"),
, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.RED);
WritableCellFormat headerFormat = new WritableCellFormat(NumberFormats.TEXT);
headerFormat.setFont(font);
try {
//内容水平居中显示
headerFormat.setAlignment(jxl.format.Alignment.CENTRE);
} catch (WriteException e) {
e.printStackTrace();
} return headerFormat;
} private WritableCellFormat getExcelContentStyle(){
WritableFont font = new WritableFont(WritableFont.createFont("宋体"),
, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.BLACK);
WritableCellFormat contentFormat = new WritableCellFormat(NumberFormats.TEXT);
contentFormat.setFont(font);
try {
//允许换行
contentFormat.setWrap(true);
} catch (WriteException e) {
e.printStackTrace();
}
return contentFormat;
}

JXL生成Excel,并提供下载(1:生成Excel)的更多相关文章

  1. JXL生成Excel,并提供下载(2:提供下载)

    实现效果: 项目中使用JXL生成Excel,使生成的Excel可以让用户下载,如下图 一.生成Excel 二.提供下载 实现思路: 1.页面使用form表单提交方式(Ajax提交方式,我这里不行) 2 ...

  2. .net生成Excel,并下载

    生成Excel的方式有很多种,这里记录两个最简单的: 1.将数据保存为html,然后输出到客户端,保存为Excel文件: 2.通过\t\n生成字符串,然后输出到客户端,保存为Excel. 以上两者的原 ...

  3. php生成csv文件并提供下载及相关注意事项

    1.生成文件过程略,只要逗号分割就可以了 2.提供下载加上如下代码: header("Content-type: application/octet-stream"); heade ...

  4. java利用poi生成excel文件后下载本地

    1.该功能需要poi的jar包,链接: http://pan.baidu.com/s/1migAtNq 密码: 38fx. 2.首先新建一个实体类,用以存放单个数据 public class Test ...

  5. java实现点击查询数据生成excel文件并下载

    须先导入关键maven包 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi& ...

  6. ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案 try.dot.net 的正确使用姿势 .Net NPOI 根据excel模板导出excel、直接生成excel .Net NPOI 上传excel文件、提交后台获取excel里的数据

    ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案   ASP.NET Core 从2.2版本开始,采用了一个新的名为Endpoint的路由方案,与原来的方案在使用上差别不 ...

  7. 杂项收集,包括-发邮件、二维码生成、文件下载、压缩、导出excel

    本篇就最近工作解决的问题做个代码收集.包括以下几个方面:发邮件.二维码生成.文件下载.压缩.导出excel.有一种可用的解决方法就好,不求全面,不求原理. 1.发邮件: 命名空间:System.Net ...

  8. 使用Aspose.Cell控件实现Excel高难度报表的生成(三)

    在之前几篇文章中,介绍了关于Apsose.cell这个强大的Excel操作控件的使用,相关文章如下: 使用Aspose.Cell控件实现Excel高难度报表的生成(一) 使用Aspose.Cell控件 ...

  9. 懒人小工具:自动生成Model,Insert,Select,Delete以及导出Excel的方法

    在开发的过程中,我们为了节约时间,往往会将大量重复机械的代码封装,考虑代码的复用性,这样我们可以节约很多时间来做别的事情.最近跳槽到一节webform开发的公司,主要是开发自己公司用的ERP.开始因为 ...

  10. 懒人小工具1:winform自动生成Model,Insert,Select,Delete以及导出Excel的方法

       懒人小工具2:T4自动生成Model,Insert,Select,Delete以及导出Excel的方法    github地址:https://github.com/Jimmey-Jiang/J ...

随机推荐

  1. 数据结构(C语言版)-第6章 图

    6.1 图的定义和基本术语 图:Graph=(V,E)  V:顶点(数据元素)的有穷非空集合:  E:边的有穷集合. 无向图:每条边都是无方向的 有向图:每条边都是有方向的 完全图:任意两个点都有一条 ...

  2. 线性代数 | Linear Algebra

    网上说<线性代数应该这样学>非常不错,再配合大学教材,把线性代数的基本知识点过一遍. 线性代数 - 知乎 最近在跟一个教程:李宏毅的线性代数 基本知识: Rn :We denote the ...

  3. Debian初始化配置

    1.解决中文显示乱码windows的宋体文件上传到debian的字体目录,并运行dpkg-reconfigure locales命令来设置系统的字体root@debian:~# mv simsun.t ...

  4. OpenVPN参数详解

    一般选项: –config file : 从file中读取配置选项. –help : 显示选项. –version : 显示版权和版本信息. 隧道选项: –local host : 本地主机名或IP地 ...

  5. 使用visual studio把xsd文件转成xml格式文件

    使用visual studio把xsd文件转成xml格式文件 最近一段时间都在做Amazon的mws api的对接工作,mws api的描述文件都是使用的xsd文件来进行的,之前确实也没有接触过,也花 ...

  6. Exception:public class feign.codec.EncodeException feign.codec.EncodeException: 'Content-Type' cannot contain wildcard type '*'

    一.异常出现的场景  Spring Cloud 服务A通过feign调用服务B;之前是好好的,但今天突然就不好了,抛以下异常===> 出现原因补充,Spring Boot默认的JSON方式 Ja ...

  7. 将内网ip映射到外网域名

     一.应用场景 1.在本地测试微信支付回调 二.如何使用natapp实现内网穿透 1.第一步注册账号并进行实名制认证 natapp网站地址 https://natapp.cn/ 2.第二步申请免费隧道 ...

  8. 关于Androidstudio无法获取到所有的SDk版本,需要挂国内镜像的问题

    由于墙的原因 我们在使用AndroidStudio的时候SDK Manager无法获取到所有的版本 需要我们设置下使用国内的镜像 ****首先打开Android SDK Manager  然后按照如图 ...

  9. apiCloud 调微信支付,调支付宝支付

    data里面的参数信息,需要从后台接口中调取,点击查看微信支付详情,https://docs.apicloud.com/Client-API/Open-SDK/wxPay 首先,需要在config.x ...

  10. 宽度优先搜索BFS(Breadth-First-Search)

    Breadth-First-Search 1. 与DFS的异同 相同点:搜索所有可能的状态. 不同点:搜索顺序. 2. BFS总是先搜索距离初始状态近的状态,它是按照:开始状态->只需一次转移就 ...