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();
            }
        }

    }

}

结果:

原文地址:https://www.cnblogs.com/liutianci/p/8302138.html