• POI 操作 Excel


    引用:POI官方文档  ,POI官方快速引导

    Excel 主要有两种格式,xls和xlsx, xls 为2003版及以下Excel,xlsx为2007版及以上Excel。

    Apache POI 提供相对应的HSSF和XSSF对应。

    对于一个Excel来说,有哪些基本的构成呢?

    Sheet:搜了一下叫工作表。Excel可以有多个Sheet。

    Row :行

    Cell:单元格

    Column:列

    可以用POI 做什么呢?

    功能不外乎对上面的那些基本构成的增删查改了,Excel还可以设置字体颜色,大小等等。

    代码都使用XSSF相关的包。

    xlsx文件的读取和输出

     // 文件的读取
     Workbook wb = new XSSFWorkbook(new FileInputStream("workbook.xlsx"));
     //文件的输出
    try (OutputStream fileOut = new FileOutputStream("workbook.xlsx")) { wb.write(fileOut); }

    Sheet相关的操作:创建,获取

     Workbook wb = new XSSFWorkbook(new FileInputStream("workbook.xlsx"));
            //创建工作表
            Sheet sheet = wb.createSheet("new sheet");
            //根据名字获取工作表
            Sheet newSheet = wb.getSheet("new sheet");
            
           try (OutputStream fileOut = new FileOutputStream("workbook.xlsx")) {
                wb.write(fileOut);
            }

    Row相关的操作:创建,获取

     //创建工作簿
      Sheet sheet = wb.createSheet("new sheet");
      //创建Row
      Row row = sheet.createRow(0);
      //获取Row
      Row rowFirstRow = sheet.getRow(0);

    Cell相关的操作  :创建,获取,设置Cell内容,设置某一段单元格某部分字体格式

    Cell 单元格的类型 

    数字,字符串,公式,空白,布尔类型,错误()

         //创建工作簿
            Sheet sheet = wb.getSheet("new sheet");
            //创建Row
            Row row = sheet.createRow(0);
            //创建单元格并设置值
            row.createCell(0).setCellValue(new Date());
            row.createCell(1).setCellValue(new XSSFRichTextString("123123123"));
            row.createCell(2).setCellValue(true);
    
            //设置字体
            Font font = wb.createFont();
            font.setColor(IndexedColors.RED.getIndex());
            XSSFRichTextString xssfRichTextString = new XSSFRichTextString("0123456789");
            // 对012采用字体
            xssfRichTextString.applyFont(0,3,font);
    
            row.createCell(3).setCellValue(xssfRichTextString);

    Column相关的操作 :设置列宽

    XSSFSheet sheet = wb.createSheet("规则列表");
    // 宽度的单位是字符宽度的1/256
    sheet.setColumnWidth(0,255*15);
  • 相关阅读:
    famous javascript library.
    54陈上有一些技术文章
    codeforces 612A The Text Splitting(扩展欧几里得)
    UVA 11235 Frequent values
    codeforces 604A Uncowed Forces
    nyoj 138 找球号(二)
    codeforces 592A PawnChess
    cidefirces Educational Codeforces Round 2 A. Extract Numbers
    cidefirces Educational Codeforces Round 2 B Queries about less or equal elements
    codeforces Educational Codeforces Round 2 C Make Palindrome
  • 原文地址:https://www.cnblogs.com/alway-july/p/9235568.html
Copyright © 2020-2023  润新知