你的位置:首页 > Java教程

[Java教程]Java操作excel文件


      前两天学习了两种java操作excel的方法,对于网站需要创建、修改、导出excel文件,可以使用这两种方法,第一种方法是使用JExcel,第二种方法是使用poi中的HSSF,前一种方法比较简单。这里做个总结。

1.JExcel,需要的jar包jxl.jar

只读文件

Workbook wb=Workbook.getWorkbook(File path)

可读写文件,创建一个新文件

WritableWrokbook wwb=Wrokbook.createWorkbook(String filePath)

主要的层次关系如下

重要的方法:

      //设置字体样式        WritableFont font=new WritableFont(WritableFont.TIMES, 15, WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE, Colour.BLACK);        WritableCellFormat fmt=new WritableCellFormat(font);        fmt.setAlignment(Alignment.CENTRE);        Label label1=new Label(0, 0, "软件工程一班名单", fmt);

      sheet.mergeCells(0, 0, 4, 0);//合并单元格        sheet.setRowView(0, 500);//设置第一行的宽度//都是在sheet中实现的

for(int i=1;i<rsheet.getRows();i++)//循环获取sheet中的内容          for(int j=0;j<rsheet.getColumns();j++){            Label label=new Label(j, i,rsheet.getCell(j, i).getContents());            sheet.addCell(label);          }

        DateFormat df=new DateFormat("yyyy-MM-dd");//指定时间的显示方式        WritableCellFormat wcfDF=new WritableCellFormat(df);        DateTime tm=new DateTime(0,rsheet.getRows()+1, new Date(),wcfDF);        sheet.addCell(tm);        wbook.write();

2.POI中的HSSF,其结构和JExcel中的结构差不多

HSSFWorkbook-(createSheet)>HSSFSheet-(createRow)>HSSFRow-(createCell)>HSSFCell,与JExcel不同的是HSSFWorkbook最后才导入到文件流中,而且没有列的对象,由行定位列。

重要的修饰方法:

    font.setColor(HSSFFont.COLOR_RED);    font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);    HSSFCellStyle cellStyle=book.createCellStyle();//样式添加    cellStyle.setDataFormat(book.createDataFormat().getFormat("yyyy-MM-dd"));//设置时间表示方式    cellStyle.setFont(font);      cell.setCellStyle(cellStyle);

更多方法参照其api文档

2016-04-06 13:23:25