• ApachePOI快速入门


    POI

    三大实现类

    HSSFWorkbook XSSFWorkbook SXSSFWorkbook

      <dependencies>
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi</artifactId>
                <version>3.17</version>
            </dependency>
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi-ooxml</artifactId>
                <version>3.17</version>
            </dependency>
      </dependencies>
    
    • 03 创建 HSSFWorkbook对象 xls --poi 6536行

    • 07 创建 XSSFWorkbook对象 xlsx --ooxml 耗时长!!

    • 00 创建 SXSSFWorkbook对象 升级版 快一点!

    import org.apache.poi.hssf.usermodel.HSSFCell;
    import org.apache.poi.hssf.usermodel.HSSFRow;
    import org.apache.poi.hssf.usermodel.HSSFSheet;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    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.ss.usermodel.Workbook;
    import org.apache.poi.xssf.usermodel.XSSFSheet;
    import org.apache.poi.xssf.usermodel.XSSFWorkbook;
    
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    /**
     * 03版本 后缀 xls HSSFWorkbook对象
     * 03版本 后缀 xlsx  XSSFWorkbook对象
     */
    public class Demo {
        public static void main(String[] args) throws IOException {
    
            //新建工作簿
            Workbook workbook = new HSSFWorkbook();
            //新建表
            Sheet sheet = workbook.createSheet("统计表");
            //创建行
            Row row1 = sheet.createRow(0);
            //创建单元格
            Cell cell = row1.createCell(0);
            //在单元格填充内容
            cell.setCellValue("用户名");
            Cell cell1 = row1.createCell(1);
            cell1.setCellValue("性别");
            Row row2 = sheet.createRow(1);
            Cell cell2 = row2.createCell(0);
            cell2.setCellValue("哈哈");
            Cell cell3 = row2.createCell(1);
            cell3.setCellValue("15");
            //表格导出
            String path = "D:\web\";
            FileOutputStream fileOutputStream = new FileOutputStream(path + "03.xlsx");
            workbook.write(fileOutputStream);
            //关闭流
            fileOutputStream.close();
    
    
    
            FileInputStream fileInputStream = new FileInputStream("D:\web\" + "03.xlsx");
            Workbook wb = new HSSFWorkbook(fileInputStream);
            Sheet st = wb.getSheetAt(0);
    
            Row row = st.getRow(0);
            int physicalNumberOfCells = row.getPhysicalNumberOfCells();
            for (int i = 0; i < physicalNumberOfCells; i++) {
                if(i==0) {
                    System.out.print("|");
                }
                Cell cellxx = row.getCell(i);
                System.out.print(cellxx+"|");
            }
    
            int physicalNumberOfRows = st.getPhysicalNumberOfRows();
    
            for (int i = 0; i < physicalNumberOfRows; i++) {
                if(i==0) {
                    continue;
                }
                System.out.println("");
                Row row3 = st.getRow(i);
                int physicalNumberOfCells1 = row3.getPhysicalNumberOfCells();
                for (int j = 0; j < physicalNumberOfCells1; j++) {
                    Cell cellxx = row3.getCell(j);
                    System.out.print(cellxx+"|");
                }
            }
            fileInputStream.close();
        }
    }
    
    

    1、获取sheet的总行数
    int totalRows = sheet.getPhysicalNumberOfRows();
    2、获取该行的总列数
    int RowCells=sheet.getRow(0).getPhysicalNumberOfCells();

  • 相关阅读:
    去除phpcms会员登录后头部登陆条的会员名称的括号
    图片左右间隔滚动Jquery特效
    JS判断字符串长度的5个方法
    HTML中&nbsp; &ensp; &emsp; &thinsp;等6种空白空格的区别
    Chrome firefox ie等浏览器空格&nbsp;宽度不一样怎么办
    jQuery延迟加载插件(Lazy Load)详解
    jquery复选框 选中事件 及其判断是否被选中
    手机网页Html代码实现(解决显示页面很小的问题)
    iOS下的按钮css去除原生样式
    用纯css改变下拉列表select框的默认样式(不兼容IE10以下)
  • 原文地址:https://www.cnblogs.com/botaoJava/p/13870793.html
Copyright © 2020-2023  润新知