Java数据导出功能之导出Excel文件实例

在编程中经常需要使用到表格(报表)的处理主要以Excel表格为主。下面给出用java写入数据到excel表格方法:

  1.添加jar文件

    java导入导出Excel文件要引入jxl.jar包,最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。下载地址:http://www.andykhan.com/jexcelapi/

  2.jxl对Excel表格的认识

  可以参见:https://www.nhooo.com/article/68631.htm

  如下图是准备要建立的Excel文件t.xls。坐标(列,行):角色(0,0),助教(0,3),功能描述(3,0),UC22(1,4)。

   3.java代码根据程序中的数据生成上述图片所示的t.xls文件

import java.io.File;
import jxl.*;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;

public class Writer_excel{
  public static void main(String[] args) {
    //标题行
    String title[]={"角色","编号","功能名称","功能描述"};
    //内容
    String context[][]={{"UC11","设置课程","创建课程"},
              {"UC12","设置学生名单","给出与课程关联的学生名单"},
              {"UC21","查看学生名单",""},
              {"UC22","查看小组信息","显示助教所负责的小组列表信息"}
              };
    //操作执行
    try { 
      //t.xls为要新建的文件名
      WritableWorkbook book= Workbook.createWorkbook(new File("t.xls")); 
      //生成名为“第一页”的工作表,参数0表示这是第一页 
      WritableSheet sheet=book.createSheet("第一页",0); 
      
      //写入内容
      for(int i=0;i<4;i++)  //title
        sheet.addCell(new Label(i,0,title[i])); 
      for(int i=0;i<4;i++)  //context
      {
        for(int j=0;j<3;j++)
        {
          sheet.addCell(new Label(j+1,i+1,context[i][j])); 
        }
      }
      sheet.addCell(new Label(0,1,"教师"));
      sheet.addCell(new Label(0,3,"助教"));
      
      /*合并单元格.合并既可以是横向的,也可以是纵向的
       *WritableSheet.mergeCells(int m,int n,int p,int q);  表示由(m,n)到(p,q)的单元格组成的矩形区域合并
       * */
      sheet.mergeCells(0,1,0,2);
      sheet.mergeCells(0,3,0,4);
      
      //写入数据
      book.write(); 
      //关闭文件
      book.close(); 
    }
    catch(Exception e) { } 
  }
}