zoukankan      html  css  js  c++  java
  • Java生成Excel表格

    在学习生成Excel之前,我们首先了解一下什么是POI;

    Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。

    HSSF - 提供读写Microsoft Excel格式档案的功能。

    XSSF - 提供读写Microsoft Excel OOXML格式档案的功能。

    HWPF - 提供读写Microsoft Word格式档案的功能。

    HSLF - 提供读写Microsoft PowerPoint格式档案的功能。

    HDGF - 提供读写Microsoft Visio格式档案的功能。

    下面是一个demo,也有比较详细的注解:

    package test;
    
    import java.io.File;
    import java.io.FileOutputStream;
    
    import org.apache.poi.hssf.usermodel.HSSFCell;
    import org.apache.poi.hssf.usermodel.HSSFCellStyle;
    import org.apache.poi.hssf.usermodel.HSSFFont;
    import org.apache.poi.hssf.usermodel.HSSFRow;
    import org.apache.poi.hssf.usermodel.HSSFSheet;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    //导出Excel表
    public class PoiTest {
        public static String outputFile = "D:\test.xls";
        public static void main(String[] args) {
            PoiTest poiTest = new PoiTest();
            poiTest.createbook(outputFile);
        }
    
        public HSSFWorkbook createbook(String fileName) {
                // 创建Excel工作簿
                HSSFWorkbook workbook = new HSSFWorkbook();
                // 在Excel工作簿中创建工作表
                HSSFSheet sheet = workbook.createSheet("测试");// 带有表名的
                // HSSFSheet sheet = workbook.createSheet();
                HSSFCellStyle style = workbook.createCellStyle();
                HSSFFont font = workbook.createFont();
                font.setFontHeightInPoints((short) 12);// 设置字体大小
                font.setFontName("微软雅黑");
                style.setFont(font);
                // 在索引0的位置创建行(最顶端的行)
                HSSFRow headrow = sheet.createRow((short) 0);
                // 在索引0的位置创建单元格(左上端)
                for (int j = 0; j < 5; j++) {
                    HSSFCell cell = headrow.createCell(j);
                    // 定义单元格为字符串类型
                    cell.setCellType(HSSFCell.CELL_TYPE_STRING);
                    // 在单元格中输入一些内容
                    cell.setCellValue("姓名 " + j);
                    cell.setCellStyle(style);
                }
                for (int k = 1; k < 10; k++) {
                    HSSFRow row = sheet.createRow((short) k);
                    for (int n = 0; n < 5; n++) {
                        HSSFCell cell = row.createCell(n);
                        // 定义单元格为字符串类型
                        cell.setCellType(HSSFCell.CELL_TYPE_STRING);
                        // 在单元格中输入一些内容
                        cell.setCellValue("张三" + n);
                        cell.setCellStyle(style);
                    }
                }
                try {
                // 新建一个输出文件流
                FileOutputStream fOut = new FileOutputStream(outputFile);
                // 把相应的Excel工作簿存盘
                workbook.write(fOut);
                fOut.flush();
                // 操作结束,关闭文件
                fOut.close();
                System.out.println("文件生成");
                } catch (Exception e) {
                }
            return workbook;
    
        }
    }
  • 相关阅读:
    我的知识库(4) java获取页面编码(Z)
    知识库(3)JAVA 正则表达式 (超详细)
    The Struts dispatcher cannot be found. This is usually caused by using Struts tags without the associated filter. Struts
    某人总结的《英语听力的技巧 》,挺搞的
    我的知识库(5)java单例模式详解
    构建可扩展程序
    SerialPort (RS232 Serial COM Port) in C# .NET
    Python学习笔记——String、Sequences
    UI题目我的答案
    jQuery学习系列学会操纵Form表单元素(1)
  • 原文地址:https://www.cnblogs.com/ouyanxia/p/6612549.html
Copyright © 2011-2022 走看看