亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Apache POI的基本使用方法

發布時間:2021-11-04 09:08:22 來源:億速云 閱讀:225 作者:柒染 欄目:開發技術

今天就跟大家聊聊有關Apache POI的基本使用方法,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

    基本介紹

    POI

    • pache POI是用Java編寫的免費開源的跨平臺的Java API,Apache POI提供API給Java程序對Microsoft Office格式檔案讀和寫的功能,

    • 使用最多的就是使用POI操作Excel文件。

    • 它還能操作word等這些其他形式的文檔

    jxl:專門操作Excel,專門用來操作Excel的

    使用POI,需要導入maven坐標

    <dependency>
      <groupId>org.apache.poi</groupId>
      <artifactId>poi</artifactId>
      <version>3.14</version>
    </dependency>
    <dependency>
      <groupId>org.apache.poi</groupId>
      <artifactId>poi-ooxml</artifactId>
      <version>3.14</version>
    </dependency>

    POI結構:針對不同的文檔形式來操作的時候會提供相應的一些類

    HSSF - 提供讀寫Microsoft Excel XLS格式檔案的功能
    XSSF - 提供讀寫Microsoft Excel OOXML XLSX格式檔案的功能
    HWPF - 提供讀寫Microsoft Word DOC格式檔案的功能
    HSLF - 提供讀寫Microsoft PowerPoint格式檔案的功能
    HDGF - 提供讀Microsoft Visio格式檔案的功能
    HPBF - 提供讀Microsoft Publisher格式檔案的功能
    HSMF - 提供讀Microsoft Outlook格式檔案的功能

    入門測試(從Excel文件讀取數據)

    使用POI可以從一個已經存在的Excel文件中讀取數據

    第一步:導入maven坐標

    下面是第二步

    第二步:創建Excel文件

    Apache POI的基本使用方法

    第三步:寫測試代碼

    package com.yy.test;
    
    import org.apache.poi.ss.usermodel.Cell;
    import org.apache.poi.ss.usermodel.Row;
    import org.apache.poi.xssf.usermodel.XSSFSheet;
    import org.apache.poi.xssf.usermodel.XSSFWorkbook;
    import org.junit.Test;
    
    import java.io.File;
    import java.io.FileInputStream;
    
    /**
     * @author Marston
     * @date 2021/10/29
     */
    public class POITest {
        @Test
        public void test() throws Exception {
            //傳入一個輸入流,加載指定文件,創建一個Excel對象(工作簿)
            XSSFWorkbook excel = new XSSFWorkbook(new FileInputStream(new File("E:\\testNomal\\poi.xlsx")));
            //讀取Excel文件中的第一個Sheet標簽頁
            XSSFSheet sheet = excel.getSheetAt(0);
            //一個sheet頁里面有很多行,遍歷這個sheet標簽頁,獲取每一行數據
            for (Row row : sheet) {
                //遍歷行,獲得每個單元格對象
                for (Cell cell : row) {
                    //cell代表單元格對象
                    System.out.println(cell.getStringCellValue());//getStringCellValue第二列因為是數值,不能轉為String類型的所以報錯
                    //只要將Excel表格里面的第二列的內容改為string類型的就可以了
                }
            }
            //關閉Excel文件
            excel.close();
        }
    }

    運行結果:

    Apache POI的基本使用方法

    因為是入門案例,我這里就要類型改變為下面的,將Excel文件里面的內容修改后:

    Apache POI的基本使用方法
    Apache POI的基本使用方法

    代碼說明及擴展

    通過上面的入門案例可以看到,POI操作Excel表格封裝了幾個核心對象:

    XSSFWorkbook:工作簿
    XSSFSheet:工作表
    Row:行
    Cell:單元格

    上面案例是通過遍歷工作表獲得行,遍歷行獲得單元格,最終獲取單元格中的值。

    還有一種方式就是獲取工作表最后一個行號,從而根據行號獲得行對象,通過行獲取最后一個單元格索引,從而根據單元格索引獲取每行的一個單元格對象,代碼如下:

    package com.yy.test;
    
    import org.apache.poi.ss.usermodel.Cell;
    import org.apache.poi.ss.usermodel.Row;
    import org.apache.poi.xssf.usermodel.XSSFRow;
    import org.apache.poi.xssf.usermodel.XSSFSheet;
    import org.apache.poi.xssf.usermodel.XSSFWorkbook;
    import org.junit.Test;
    
    import java.io.File;
    import java.io.FileInputStream;
    
    /**
     * @author Marston
     * @date 2021/10/29
     */
    public class POITest {
        @Test
        public void test2() throws Exception {
            //傳入一個輸入流,加載指定文件,創建一個Excel對象(工作簿)
            XSSFWorkbook excel = new XSSFWorkbook(new FileInputStream(new File("E:\\testNomal\\poi.xlsx")));
            //讀取Excel文件中的第一個Sheet標簽頁
            XSSFSheet sheet = excel.getSheetAt(0);
            //獲取當前工作表最后一行的行號,行號從0開始
            int lastRowNum = sheet.getLastRowNum();
            System.out.println("lastRowNum:"+lastRowNum);
            for(int i=0;i<=lastRowNum;i++){
                //根據行號獲取每一行
                XSSFRow row = sheet.getRow(i);
                //獲取當前行最后一個單元格索引
                short lastCellNum = row.getLastCellNum();
                System.out.println("lastCellNum:"+lastCellNum);
                for(short j=0;j<lastCellNum;j++){
                    //根據單元格索引獲取單元格內容
                    String value = row.getCell(j).getStringCellValue();
                    System.out.println(value);
                }
            }
            //關閉Excel文件
            excel.close();
        }
    }

    Apache POI的基本使用方法

    入門測試(向Excel文件寫入數據)

    測試代碼:

    //使用POI向Excel文件寫入數據,并且通過輸出流將創建的Excel文件保存到本地磁盤
        //@Test
        public void test3() throws Exception{
            //在內存中創建一個Excel文件(工作簿)
            XSSFWorkbook excel = new XSSFWorkbook();
            //創建一個工作表對象,名字叫做:POI寫入測試
            XSSFSheet sheet = excel.createSheet("POI寫入測試");
            //在工作表中創建行對象,在第一行創建
            XSSFRow title = sheet.createRow(0);
            //在行中創建單元格對象
            title.createCell(0).setCellValue("姓名");//第一列內容
            title.createCell(1).setCellValue("地址");
            title.createCell(2).setCellValue("年齡");
    
    		//在第二行創建
            XSSFRow dataRow = sheet.createRow(1);
            dataRow.createCell(0).setCellValue("小明");
            dataRow.createCell(1).setCellValue("北京");
            dataRow.createCell(2).setCellValue("20");
    
            //創建一個輸出流,通過輸出流將內存中的Excel文件寫到磁盤
            FileOutputStream out = new FileOutputStream(new File("e:\\hello.xlsx"));
            excel.write(out);//寫入
            out.flush();//刷新
            excel.close();
        }

    Apache POI的基本使用方法

    看完上述內容,你們對Apache POI的基本使用方法有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    西华县| 石门县| 万荣县| 内丘县| 鸡西市| 剑河县| 惠州市| 介休市| 桂阳县| 镇赉县| 绥中县| 利川市| 甘孜县| 遵化市| 庄河市| 南安市| 新乡县| 新乡市| 将乐县| 新沂市| 铜陵市| 正镶白旗| 山阴县| 屏南县| 三江| 元阳县| 天全县| 抚州市| 甘南县| 会宁县| 灵山县| 衡水市| 靖边县| 高唐县| 武清区| 封丘县| 石泉县| 洮南市| 资兴市| 乐山市| 共和县|