Java生成excel导出文件

1.导出list集合类型数据文件

package com.mi.entity;

import java.util.Date;

public class Student {
    private int id;
    private String name;
    private int age;
    private Date birth;

    public Student(int id, String name, int age, Date birth) {
        super();
        this.id = id;
        this.name = name;
        this.age = age;
        this.birth = birth;
    }

}

生成excel文件代码

package com.mi.util;

import java.io.File;
import java.io.FileOutputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import com.mi.entity.Student;

public class CreateSimpleExcelToDisk {

    /**
     * 手工创建一个包含student的list
     * @return
     * @throws Exception
     */
    private static List<Student> getStudent() throws Exception {
        List<Student> list = new ArrayList<>();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
        Student user1 = new Student(1, "张三", 16, sdf.parse("1997-03-12"));
        Student user2 = new Student(2, "李四", 17, sdf.parse("1996-08-12"));
        Student user3 = new Student(3, "王五", 26, sdf.parse("1985-11-12"));
        list.add(user1);
        list.add(user2);
        list.add(user3);

        return list;
    }
    public static void main(String[] args) throws Exception {
        //第一步,创建一个webbook文件,对应一个excel文件
        HSSFWorkbook wb = new HSSFWorkbook();
        //第二部,在excel中添加一个sheet工作簿,参数为该工作簿名字,不写为默认;
        HSSFSheet sheet = wb.createSheet("学生表1");
        //第三部,做sheet中添加表头第0行,注意老版本poi对excel的行数列数有限制short
        HSSFRow row = sheet.createRow((int)0);
        //第四部,创建单元格表头 设置表头居中
        HSSFCellStyle style = wb.createCellStyle();
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER);//创建一个居中格式

        //创建具体盛放数据的单元格,可以考虑把cell抽成共通对象去使用
        HSSFCell cell = row.createCell((int) 0);
        cell.setCellValue("学号");
        cell = row.createCell((int) 1);
        cell.setCellValue("姓名");
        cell = row.createCell((int) 2);
        cell.setCellValue("年龄");
        cell = row.createCell((int) 3);
        cell.setCellValue("生日");

        //第五部,写入实体数据 实际应用中这些数据应该是从数据库中得到
        List<Student> list = CreateSimpleExcelToDisk.getStudent();
        for(int i=0;i<list.size();i++){
            //每次新建一行然后在新行中插入list中的数据对象,有点繁琐,也许有更好的封装方法,留待后看
            row = sheet.createRow((int)i+1);
            row.createCell((int)0).setCellValue(list.get(i).getId());
            row.createCell((int)1).setCellValue(list.get(i).getName());
            row.createCell((int)2).setCellValue(list.get(i).getAge());
            row.createCell((int)3).setCellValue(new SimpleDateFormat("yyyy-mm-dd").format(list.get(i).getBirth()));

        }

        //第六部,将文件保存到指定位置
        FileOutputStream fout = new FileOutputStream("D:/student.xls");
        wb.write(fout);
        fout.close();
    }
}

效果:

注:.首先下载poi-3.6-20091214.jar,下载地址如下:

http://download.csdn.net/detail/evangel_z/3895051

时间: 2024-10-09 09:57:24

Java生成excel导出文件的相关文章

java生成excel表格和pdf并实现下载弹出框

今天在pdf和excel中都实现了在浏览器弹出下载框 将之前在网上查找的生成excel表格代码稍微修改下: public class CreateSimpleExcelToDisk { /** * @功能:手工构建一个简单格式的Excel */ private static List<News> getNews() throws Exception { List<News> data = new ArrayList<News>(); NewsDao dao = new

java生成excel文件工具类实例

import java.io.File; import java.io.IOException; import jxl.Workbook; import jxl.write.Label; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; import jxl.write.WriteException; import jxl.write.biff.RowsExceededException; import org.

Java生成Excel文件

1.设计源码 /** * * @title:ExcelUtils.java * @Package:com.you.utils * @Description:<h3>一句话描述功能</h3> * @author:游海东 * @date:2015-3-21下午10:17:34 * @version V1.0 * */ package com.you.utils; import java.io.File; import java.io.IOException; import jxl.Wo

java生成excel和读取excel例子

关于使用java的操作excel的方法有很多种,我的http://blog.csdn.net/qq_20545159/article/details/45132041价绍过,下面是使用jxl生成xls格式的excel简单的代码. 使用jxl生成excel文件首先必须将jxl.jar的包加到你的项目的路径下. package com.silence.excel; import java.io.File; import jxl.Workbook; import jxl.write.Label; im

java 生成EXCEL完整实现(附加代码)

生成Excel 我这里是用的POI 的jar包      请尊重原创,转载时请标明出处 谢谢 需要的jar包 请自行下载 commons-beanutils-1.7.1.jar commons-lang-2.1.jar poi-3.10.jar 实体类: import java.util.Date; public class Student { private String name; private String sex; private Date age; public String get

java生成Excel及操作Excel

JAVA EXCEL API:是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容.创建新的Excel文件.更新已经存在的Excel文件.使用该API非Windows操作系统也可以通过纯Java应用来处理Excel数据表.因为它是使用Java编写的,所以我们在Web应用中可以通过JSP.Servlet来调用API实现对Excel数据表的访问. 下载: 官方网站 http://www.andykhan.com/jexcelapi/ 下载最新版本(本人下的是jexcelapi_2_6

java生成Excel两种方式

方法一,利用第三方jar包:jxl.jar 无论方法一方法二最后最好用转换成流传给前端. 1 public void createExcel(){ 2 try{ 3 //打开文件 4 WritableWorkbook workbook = Workbook.createWorkbook(new File("test.xls")); 5 //生成名为"第一页"的工作表,参数0表示这是第一页 6 WritableSheet sheet = workbook.create

JAVA生成EXCEL图形

跟据客户的要求,需要开发一套包括图形的报表,还需要导出WORD 图表需要这样: 这样: 这样: 还有这样: 接下来是实现思路: 以往用的最多的就是JFreechart,手上也有实现各种图形的资源,但是领导说用它做的图形太丑了, 所以没什么卵用. FusionCharts到是漂亮,但是没有办法实现上述图表,客户也不能接受替代方案,同样没什么卵用 然后就是百度ECharts,漂亮.功能强大.灵活性强(JS/HTML5实现,可以随意更改源码), 但是有些功能不支待IE8, 还是没什么卵用 想了很多方法

java生成excel报表

使用 apache poi包来实现该功能 包可以通过官网下载,也可以通过 http://download.csdn.net/detail/ch717828/8361309 下载 接下来看代码 private static String xls2003 = "myexcel.xls"; public static void main(String[] args) { //创建2003 excel String filePath = generateExcel2003(xls2003);