资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

java导出数据到Excel文件

这是一个导出数据到Excel的工具类

创新互联是网站建设专家,致力于互联网品牌建设与网络营销,专业领域包括成都网站制作、成都做网站、外贸营销网站建设、电商网站制作开发、微信平台小程序开发、微信营销、系统平台开发,与其他网站设计及系统开发公司不同,我们的整合解决方案结合了恒基网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,且不断评估并优化我们的方案,为客户提供全方位的互联网品牌整合方案!

方式一:maven方式需要引用的包(版本自己调整即可)


        org.apache.poi
        poi
        4.0.0




        org.apache.poi
        poi-ooxml
        4.0.1
方式二:传统方式需要引用的包(版本自己调整即可)
commons-collections4-4.2.jar
commons-compress-1.18.jar
poi-4.0.0.jar
poi-ooxml-4.0.0.jar
poi-ooxml-schemas-4.0.0.jar
xmlbeans-3.0.1.jar

工具类代码

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;

public class ToolExcelExp {
    /**
     * @描述: 导出信息到Excel文件
     */
    public static boolean exportBigDataExcel(String savePath, List dataList) {
        long startTime = System.currentTimeMillis();
        boolean flag = false;

        // 最重要的就是使用SXSSFWorkbook,表示流的方式进行操作
        // 在内存中保持100行,超过100行将被刷新到磁盘
        SXSSFWorkbook wb = new SXSSFWorkbook(100);
        Sheet sh = wb.createSheet(); // 建立新的sheet对象

        for (int i = 0, dataListSize = dataList.size(); i < dataListSize; i++) {
            String[] str = dataList.get(i);
            Row row_value = sh.createRow(i);
            for (int j = 0, strLength = str.length; j < strLength; j++) {
                Cell cel_value = row_value.createCell(j);
                cel_value.setCellValue(str[j]);
            }
        }
        FileOutputStream fileOut;
        try {
            File fileDir = new File(savePath.substring(0, savePath.lastIndexOf(File.separator)));
            if (!fileDir.exists()) {
                fileDir.mkdirs();
            }
            fileOut = new FileOutputStream(savePath);
            wb.write(fileOut);
            fileOut.close();
            wb.dispose();
            wb.close();
            flag = true;
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        long endTime = System.currentTimeMillis();
        System.out.println("导出完毕,共耗时" + (endTime-startTime) + "毫秒");

        return flag;
    }

    // 生成测试数据
    private static List createData (){
        List dataList = new ArrayList();
        String[] headStr = new String[8];
        headStr[0] = "标题1";
        headStr[1] = "标题2";
        headStr[2] = "标题3";
        headStr[3] = "标题4";
        headStr[4] = "标题5";
        headStr[5] = "标题6";
        headStr[6] = "标题7";
        headStr[7] = "标题8";
        dataList.add(headStr);

        for (int i = 0; i < 1000000; i++) {
            String[] str = new String[8];
            str[0] = "数据的垃圾分类时间到了开房记录圣诞节了激烈的看见了房间里都是1";
            str[1] = "sdfsdfdsfdsfffffffffffff2";
            str[2] = "320480098308409823093";
            str[3] = "sdjlfkjl立刻就饿了接口连接的4";
            str[4] = "6465213的方式多为sdfsdf5";
            str[5] = "水电费水电费水电费水电费收到6";
            str[6] = "而和任何任务而气温气温7";
            str[7] = "ssdljfls了解恶劣螺纹孔8";
            dataList.add(str);
        }
        return dataList;
    }

    public static void main(String[] args) {
        List dataList = createData();
        exportBigDataExcel("e:\111.xlsx", dataList);
    }
}

分享标题:java导出数据到Excel文件
转载源于:http://cdkjz.cn/article/jpphhd.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220