java jxl

作者:原创时间:2022-04-02
文档

java jxl是什么,让我们一起了解一下?

jxl是jxl.jar通过java操作excel表格的工具类库,能够修饰单元格属性,是由java语言开发而成的,在一个Java应用中,将一部分数据生成Excel格式,是与其他系统无缝连接的重要手段。

Jxl有哪些特征?
1、支持Excel 95-2000的所有版本。
2、生成Excel 2000标准格式。 
3、支持字体、数字、日期操作。
4、能够修饰单元格属性。 
5、支持图像和图表。 

应该说以上功能已经能够大致满足我们的需要。最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。另外需要说明的是,这套API对图形和图表的支持很有限,而且仅仅识别PNG格式。

具体应用:java Jxl如何操作Excel?

示例代码如下:

public String createExcel(String path,String filename,List list,TblKepuoaRecordDispatch dispatch) throws Exception{
File file = new File(path+File.separator+filename+".xls" );
 WritableWorkbook wbook = null;
try {
wbook = Workbook.createWorkbook(file);
 // 建立excel文件
String tmptitle = filename; // 标题
WritableSheet wsheet = wbook.createSheet(filename, 0); // sheet名称
  // 设置excel标题
WritableFont wfont = new WritableFont(WritableFont.createFont("宋体"), 16, WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE,Colour.BLACK);
WritableCellFormat wcfFC = new WritableCellFormat(wfont);
wcfFC.setAlignment(Alignment.CENTRE); // 设置对齐方式 
wsheet.mergeCells(0, 0, 9, 0); // 合并单元格  
wsheet.addCell(new Label(0, 0, tmptitle, wcfFC));
wfont = new jxl.write.WritableFont(WritableFont.createFont("宋体"), 13,WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE,Colour.BLACK);
wcfFC = new WritableCellFormat(wfont);
wcfFC.setBorder(Border.NONE,BorderLineStyle.NONE); 
wcfFC.setAlignment(Alignment.CENTRE); // 设置对齐方式 
wsheet.setColumnView(0, 6); // 设置列的宽度
wsheet.setColumnView(1, 20); // 设置列的宽度
wsheet.setColumnView(2, 25); // 设置列的宽度
wsheet.setColumnView(3, 60); // 设置列的宽度
wsheet.setColumnView(4, 10); // 设置列的宽度
wsheet.setColumnView(5, 6); // 设置列的宽度
wsheet.setColumnView(6, 6); // 设置列的宽度
wsheet.setColumnView(7, 80); // 设置列的宽度
wsheet.setColumnView(8, 20); // 设置列的宽度
wsheet.setColumnView(9, 20); // 设置列的宽度
  // 开始生成主体内容                
wsheet.addCell(new Label(0, 1, "序号",wcfFC));
wsheet.addCell(new Label(1, 1, "日期",wcfFC));
wsheet.addCell(new Label(2, 1, "发文编号",wcfFC));
wsheet.addCell(new Label(3, 1, "收文单位",wcfFC));
wsheet.addCell(new Label(4, 1, "文件类型",wcfFC));
wsheet.addCell(new Label(5, 1, "件数",wcfFC));
wsheet.addCell(new Label(6, 1, "附件",wcfFC));
wsheet.addCell(new Label(7, 1, "文件标题",wcfFC));
wsheet.addCell(new Label(8, 1, "存档编号",wcfFC));
wsheet.addCell(new Label(9, 1, "签字",wcfFC));
wfont = new jxl.write.WritableFont(WritableFont.createFont("宋体"), 13,WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE,Colour.BLACK);
wcfFC = new WritableCellFormat(wfont);
wcfFC.setBorder(Border.NONE,BorderLineStyle.NONE); 
int j = 2;
for (int i = 0; i < list.size(); i++) {
dispatch=(TblKepuoaRecordDispatch) list.get(i);
 String uptime="";
if(dispatch.getDispatchDate()!=null&&!"".equals(dispatch.getDispatchDate())){
uptime=sdf2.format(dispatch.getDispatchDate());//时间格式化
}
wsheet.addCell(new Label(0, j, i+1+"",wcfFC));
wsheet.addCell(new Label(1, j,uptime,wcfFC));
wsheet.addCell(new Label(2, j,dispatch.getDispatchNo(),wcfFC));
wsheet.addCell(new Label(3, j,dispatch.getDispatchOrgan(),wcfFC));
/*if(dispatch!=null && dispatch.getDispatchOpreator()!=null && !"".equals(dispatch.getDispatchOpreator())){
if(dispatch.getCode()!=null && !"".equals(dispatch.getCode())){
wsheet.addCell(new Label(4, j,dispatch.getDispatchOpreator()+"-"+dispatch.getCode(),wcfFC));
}else{
wsheet.addCell(new Label(4, j,dispatch.getDispatchOpreator(),wcfFC));
}
}*/
wsheet.addCell(new Label(4, j, dispatch.getDispatchType(),wcfFC));
wsheet.addCell(new Label(5, j,String.valueOf(dispatch.getDispatchCount()),wcfFC));
wsheet.addCell(new Label(6, j,String.valueOf(dispatch.getDispatchAccessoriescCount()),wcfFC));
wsheet.addCell(new Label(7, j,dispatch.getDispatchName(),wcfFC));
wsheet.addCell(new Label(8, j, dispatch.getArchiveNo(),wcfFC));
j++;
}
} catch (IOException e) {
// TODO Auto-generated catch block
Loggers.info("DispatchAction 中 createExcel 方法:"+e.getMessage());
e.printStackTrace();
}finally{
if(wbook != null){
wbook.write(); // 写入文件
wbook.close();
}
}
  // 主体内容生成结束        
return filename+".xls";
}

以上就是小编今天的分享了,希望可以帮助到大家。

显示全文
java kafka java keystore java kmeans java kudu java lamada java leveldb java linklist java linq java list.add java list.contains java locale java localtime java logging java logstash java main java malloc java mapping java math.ceil java matlab java matrix java jvm java jtextfield java jtable java jta java jstat java jstack java jsonp java jsonfield java jquery java jps java joptionpane java jndi java jmh java jmeter java jit java jetty java jep 计算机管理怎么打开 excel怎么排序 两个excel如何独立显示