POI 操做 Excel

引用:POI官方文檔  ,POI官方快速引導html

Excel 主要有兩種格式,xls和xlsx, xls 爲2003版及如下Excel,xlsx爲2007版及以上Excel。apache

Apache POI 提供相對應的HSSF和XSSF對應。api

對於一個Excel來講,有哪些基本的構成呢?app

Sheet:搜了一下叫工做表。Excel能夠有多個Sheet。xss

Row :行ide

Cell:單元格字體

Column:列ui

能夠用POI 作什麼呢?spa

功能不外乎對上面的那些基本構成的增刪查改了,Excel還能夠設置字體顏色,大小等等。code

代碼都使用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);
相關文章
相關標籤/搜索