zoukankan      html  css  js  c++  java
  • Excel表格的导入导出

    Excel文件的组成:

      01.一个Excel文件由N个Sheet组成的

      02.一个Sheet由N个Row组成

      03.一个Row由N个Cell组成

    需求:

      把内存中的数据 写入到指定的excel表格中!====》输出流

    实现:

      01.下载需要的jar包 并引入到项目中

      02.编码

    在我们引入的jar包中

      1.Excel文件对应的java类是HSSFWorkBook

      2.一个HSSFWorkBook由N个HSSFSheet组成的

      3.一个HSSFSheet由N个HSSFRow组成的

      4.一个HSSFRow由N个HSSFCellt组成的

    1.把内存中的数据写入磁盘

    package com.ltc;
    
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    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;
    
    public class ExcelImport {
        public static void main(String[] args) {
            //创建Excel对象
            HSSFWorkbook hwb = new HSSFWorkbook();
            //创建sheet工作表
            HSSFSheet sheet = hwb.createSheet("成绩表");
            //创建行 row(范围0-65535)
            HSSFRow row1 = sheet.createRow(0);
            HSSFRow row2 = sheet.createRow(1);
            HSSFRow row3 = sheet.createRow(2);
            //创建列cell(范围0-255)
            HSSFCell cell1 = row1.createCell(0);
            HSSFCell cell2 = row2.createCell(0);
            HSSFCell cell3 = row3.createCell(1);
            
            //给cell格赋值
            cell1.setCellValue("第一行第一列");
            cell2.setCellValue("第二行第一列");
            cell3.setCellValue("第三行第二列");
            
            //创建输出流,把数据写入磁盘
            FileOutputStream fos = null;
            try {
                fos = new FileOutputStream("e://T19-成绩表.xls");
                //通过HSSFWorkbook 的write方法 把内存中的数据写入
                hwb.write(fos);
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }finally{
                try {
                    fos.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
            }
    }

    结果:

    2.把数据读取到控制台

    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    
    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;
    
    public class ExcelExport {
        public static void main(String[] args) {
            FileInputStream fis = null;
            try {
                fis = new FileInputStream("e://T19-成绩表.xls");
                HSSFWorkbook hwb = new HSSFWorkbook(fis);
                HSSFSheet sheet = hwb.getSheetAt(0);
                HSSFRow row1 = sheet.getRow(0);
                HSSFCell cell = row1.getCell(0);
                String value = cell.getStringCellValue();
                System.out.println(value);
                
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }finally{
                try {
                    fis.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
    
        }
    
    }

    结果:

  • 相关阅读:
    bzoj5157: [Tjoi2014]上升子序列(树状数组LIS)
    2435: [Noi2011]道路修建(树上操作)
    bzoj1019: [SHOI2008]汉诺塔(动态规划)
    bzoj1103: [POI2007]大都市meg(树链剖分)
    bzoj2190: [SDOI2008]仪仗队(欧拉)
    bzoj4519: [Cqoi2016]不同的最小割(分治最小割)
    bzoj2229: [Zjoi2011]最小割(分治最小割+最小割树思想)
    bzoj1816: [Cqoi2010]扑克牌(二分答案判断)
    [HEOI2015]兔子与樱花
    [POI2009]KAM-Pebbles
  • 原文地址:https://www.cnblogs.com/liutianci/p/8302138.html
Copyright © 2011-2022 走看看