zoukankan      html  css  js  c++  java
  • POI 数据toEXCEL

    public class TestPOI2Excel {

    @Test
    public void testWrite03Excel() throws Exception {
    //1、创建工作簿
    HSSFWorkbook workbook = new HSSFWorkbook();
    //2、创建工作表
    HSSFSheet sheet = workbook.createSheet("hello world");//指定工作表名
    //3、创建行;创建第3行
    HSSFRow row = sheet.createRow(2);
    //4、创建单元格;创建第3行第3列
    HSSFCell cell = row.createCell(2);
    cell.setCellValue("Hello World");

    //输出到硬盘
    FileOutputStream outputStream = new FileOutputStream("D:\itcast\测试.xls");
    //把excel输出到具体的地址
    workbook.write(outputStream);
    workbook.close();
    outputStream.close();
    }

    @Test
    public void testWrite07Excel() throws Exception {
    //1、创建工作簿
    XSSFWorkbook workbook = new XSSFWorkbook();
    //2、创建工作表
    XSSFSheet sheet = workbook.createSheet("hello world");//指定工作表名
    //3、创建行;创建第3行
    XSSFRow row = sheet.createRow(2);
    //4、创建单元格;创建第3行第3列
    XSSFCell cell = row.createCell(2);
    cell.setCellValue("Hello World");

    //输出到硬盘
    FileOutputStream outputStream = new FileOutputStream("D:\itcast\测试.xlsx");
    //把excel输出到具体的地址
    workbook.write(outputStream);
    workbook.close();
    outputStream.close();
    }

    @Test
    public void testRead03Excel() throws Exception {
    FileInputStream inputStream = new FileInputStream("D:\itcast\测试.xls");
    //1、读取工作簿
    HSSFWorkbook workbook = new HSSFWorkbook(inputStream);
    //2、读取第一个工作表
    HSSFSheet sheet = workbook.getSheetAt(0);
    //3、读取行;读取第3行
    HSSFRow row = sheet.getRow(2);
    //4、读取单元格;读取第3行第3列
    HSSFCell cell = row.getCell(2);
    System.out.println("第3行第3列单元格的内容为:" + cell.getStringCellValue());

    workbook.close();
    inputStream.close();
    }

    @Test
    public void testRead07Excel() throws Exception {
    FileInputStream inputStream = new FileInputStream("D:\itcast\测试.xlsx");
    //1、读取工作簿
    XSSFWorkbook workbook = new XSSFWorkbook(inputStream);
    //2、读取第一个工作表
    XSSFSheet sheet = workbook.getSheetAt(0);
    //3、读取行;读取第3行
    XSSFRow row = sheet.getRow(2);
    //4、读取单元格;读取第3行第3列
    XSSFCell cell = row.getCell(2);
    System.out.println("第3行第3列单元格的内容为:" + cell.getStringCellValue());

    workbook.close();
    inputStream.close();
    }

    @Test
    public void testRead03And07Excel() throws Exception {
    String fileName = "D:\itcast\测试.xlsx";
    if(fileName.matches("^.+\.(?i)((xls)|(xlsx))$")){//判断是否excel文档

    boolean is03Excel = fileName.matches("^.+\.(?i)(xls)$");

    FileInputStream inputStream = new FileInputStream(fileName);

    //1、读取工作簿
    Workbook workbook = is03Excel ?new HSSFWorkbook(inputStream):new XSSFWorkbook(inputStream);
    //2、读取第一个工作表
    Sheet sheet = workbook.getSheetAt(0);
    //3、读取行;读取第3行
    Row row = sheet.getRow(2);
    //4、读取单元格;读取第3行第3列
    Cell cell = row.getCell(2);
    System.out.println("第3行第3列单元格的内容为:" + cell.getStringCellValue());

    workbook.close();
    inputStream.close();
    }
    }

    @Test
    public void testExcelStyle() throws Exception {
    //1、创建工作簿
    HSSFWorkbook workbook = new HSSFWorkbook();
    //1.1、创建合并单元格对象;合并第3行的第3列到第5列
    CellRangeAddress cellRangeAddress = new CellRangeAddress(2, 2, 2, 4);//起始行号,结束行号,起始列号,结束列号
    //1.2、创建单元格样式
    HSSFCellStyle style = workbook.createCellStyle();
    style.setAlignment(HSSFCellStyle.ALIGN_CENTER);//水平居中
    style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);//垂直居中
    //1.3、创建字体
    HSSFFont font = workbook.createFont();
    font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//加粗字体
    font.setFontHeightInPoints((short) 16);//设置字体大小
    //加载字体
    style.setFont(font);

    //单元格背景
    //设置背景填充模式
    style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
    //设置填充背景色
    style.setFillBackgroundColor(HSSFColor.YELLOW.index);
    //设置填充前景色
    style.setFillForegroundColor(HSSFColor.RED.index);

    //2、创建工作表
    HSSFSheet sheet = workbook.createSheet("Hello World");//指定工作表名
    //2.1、加载合并单元格对象
    sheet.addMergedRegion(cellRangeAddress);

    //3、创建行;创建第3行
    HSSFRow row = sheet.createRow(2);
    //4、创建单元格;创建第3行第3列
    HSSFCell cell = row.createCell(2);
    //加载样式
    cell.setCellStyle(style);
    cell.setCellValue("Hello World!");

    //输出到硬盘
    FileOutputStream outputStream = new FileOutputStream("D:\itcast\测试.xls");
    //把excel输出到具体的地址
    workbook.write(outputStream);
    workbook.close();
    outputStream.close();
    }


    }

  • 相关阅读:
    Java实现 蓝桥杯VIP 算法训练 ALGO-16进制转换
    Java实现 蓝桥杯VIP 算法训练 ALGO-16进制转换
    Java实现 蓝桥杯VIP 算法训练 ALGO-85进制转换
    Java实现 蓝桥杯VIP 算法训练 ALGO-85进制转换
    Java实现 蓝桥杯VIP 算法训练 ALGO-85进制转换
    Java实现 蓝桥杯VIP 算法训练 ALGO-85进制转换
    QEvent大全,有中文解释
    涨姿势:创业做一个App需要花多少钱(8个人,6个月,就要100万,附笔记心得)
    360私有化通过发改委审批:这6家公司可能性最大
    给360的六条建议(禁止异地登录,普通用户500G足够用了)
  • 原文地址:https://www.cnblogs.com/bravolove/p/5032619.html
Copyright © 2011-2022 走看看