Java数据导出(写)Excel文件 解析

原文地址:http://www.cnblogs.com/xudong-bupt/archive/2013/03/20/2970664.html


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

  1.添加jar文件

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

  2.jxl对Excel表格的认识

  可以参见http://www.cnblogs.com/xudong-bupt/archive/2013/03/19/2969997.html

  如下图是准备要建立的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) { } 
    }
}


复制代码

  如果要导出的数据在表格中排放有一定的规则,则可以直接通过编程来实现报表的导出(写)功能。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值