zoukankan      html  css  js  c++  java
  • Java POI 创建excel表格,读取excel表格信息

    office 2007及以上版本

    前提条件,引入jar包

        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.11</version>
          <scope>test</scope>
        </dependency>
        <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>

    创建excel表格

    public class WriteExcel07 {
           @Test  
            public void writeExcel() throws IOException{  
                //创建工作簿  
                XSSFWorkbook workBook = new XSSFWorkbook();  
                //创建工作表  
                XSSFSheet sheet = workBook.createSheet("helloWorld");  
                //创建行  
                XSSFRow row = sheet.createRow(0);  
                //创建单元格,操作第三行第三列  
                XSSFCell cell = row.createCell(0, CellType.STRING);  
                cell.setCellValue("helloWorld");  
                  
                FileOutputStream outputStream = new FileOutputStream(new File("C:\Users\shay_deng\Desktop\test.xlsx"));  
                workBook.write(outputStream);  
                  
                workBook.close();//记得关闭工作簿  
            }  
    }

    读取excel表格信息

    public class ReadExcel07 {
        @Test  
        public void readExcel() throws IOException{  
            FileInputStream inputStream = new FileInputStream(new File("C:\Users\shay_deng\Desktop\test.xlsx"));  
            //读取工作簿  
            XSSFWorkbook workBook = new XSSFWorkbook(inputStream);  
            //读取工作表  
            XSSFSheet sheet = workBook.getSheetAt(0);  
            //读取行  
            XSSFRow row = sheet.getRow(0);  
            //读取单元格  
            XSSFCell cell = row.getCell(0);  
            String value = cell.getStringCellValue();  
              
            System.out.println(value);  
              
            inputStream.close();//关闭工作簿  
            workBook.close();  
        }
    }

    1.合并单元格,属于工作表,独立创建,应用于工作表

    2.样式,属于工作表,由工作簿创建,应用于单元格

    3.字体,属于工作表,由工作簿创建,应用于样式

    4.设置背景颜色,一定要先设置颜色的填充模式

    public class TestPOIExcelStyle {
         @Test  
            public void testExcelStyle() throws IOException{  
                //1.创建工作簿  
                HSSFWorkbook workBook = new HSSFWorkbook();  
                  
                //创建合并单元格对象  
                CellRangeAddress rangeAddress = new CellRangeAddress(2, 2, 2, 4);  
                //创建样式  
                HSSFCellStyle style = workBook.createCellStyle();  
                style.setAlignment(HorizontalAlignment.CENTER);  
                style.setVerticalAlignment(VerticalAlignment.CENTER);  
                //创建字体  
                HSSFFont font = workBook.createFont();  
                font.setFontHeightInPoints((short) 16);  
                //font.setFontHeight((short)320); 效果和上面一样。用这个方法设置大小,值要设置为字体大小*20倍,具体看API文档  
                font.setColor(HSSFColor.GREEN.index);  
                font.setBold(true);  
                style.setFont(font);  
                //设置背景  
                style.setFillPattern(FillPatternType.SOLID_FOREGROUND);  
                style.setFillForegroundColor(HSSFColor.RED.index);  
                  
                //2.创建工作表  
                HSSFSheet sheet = workBook.createSheet("helloWorld");  
                //添加合并区域  
                sheet.addMergedRegion(rangeAddress);  
                  
                //3.创建行  
                HSSFRow row = sheet.createRow(2);  
                //4.创建单元格  
                HSSFCell cell = row.createCell(2);  
                cell.setCellValue("helloWorld");  
                cell.setCellStyle(style);  
                  
                //输出  
                FileOutputStream outputStream = new FileOutputStream(new File("C:\Users\shay_deng\Desktop\test.xls"));  
                workBook.write(outputStream);  
                  
                workBook.close();  
                outputStream.close();  
            }  
    }
  • 相关阅读:
    java 生成二维码
    Web Service测试工具小汇
    ADF控件ID变化引发JS无法定位控件的解决方法
    create database link
    Jdeveloper下Svn的使用
    TortoiseSVN菜单项功能说明
    JSFF或JSF页面加载时触发JavaScript之方法
    更改ORACLE归档路径及归档模式
    更改oracle归档模式路径
    将Oracle数据库设置为归档模式及非归档模式
  • 原文地址:https://www.cnblogs.com/RealWorld/p/8990087.html
Copyright © 2011-2022 走看看