亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Apache POI用法示例詳解

 更新時間:2024年09月12日 11:34:04   作者:JH3073  
Apache POI是一個開源的Java API,用于處理Microsoft Office文檔,提供了多種組件,例如HSSF、XSSF等,以支持不同格式如Excel、Word、PowerPoint等文件的讀寫操作,本文介紹Apache POI用法,感興趣的朋友跟隨小編一起看看吧

一、Apache POI是什么

Apache POI是用Java編寫的免費開源的跨平臺的Java API,Apache POI提供API給Java程序?qū)icrosoft Office格式檔案讀和寫的功能,其中使用最多的就是使用POI操作Excel文件。

二、POI結(jié)構(gòu)

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格式檔案的功能

三、POI操作Excel

3.1從Excel讀取數(shù)據(jù)

//通過遍歷工作表獲得行,遍歷行獲得單元格,最終獲取單元格中的值。
//創(chuàng)建工作簿
XSSFWorkbook workbook = new XSSFWorkbook("D:\\hello.xlsx");
//獲取工作表,既可以根據(jù)工作表的順序獲取,也可以根據(jù)工作表的名稱獲取
XSSFSheet sheet = workbook.getSheetAt(0);
//遍歷工作表獲得行對象
for (Row row : sheet) {
  //遍歷行對象獲取單元格對象
  for (Cell cell : row) {
    //獲得單元格中的值
    String value = cell.getStringCellValue();
    System.out.println(value);
  }
}
workbook.close();

POI操作Excel表格封裝了幾個核心對象:

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

3.2向Excel文件寫入數(shù)據(jù)

使用POI可以在內(nèi)存中創(chuàng)建一個Excel文件并將數(shù)據(jù)寫入到這個文件,最后通過輸出流將內(nèi)存中的Excel文件下載到磁盤

import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFCell;
import java.io.FileOutputStream;
import java.io.IOException;
public class ExcelWriter {
    public static void main(String[] args) {
        // 創(chuàng)建一個新的XSSFWorkbook對象,代表整個Excel工作簿
        XSSFWorkbook workbook = new XSSFWorkbook();
        try {
            // 創(chuàng)建一個新的工作表
            XSSFSheet sheet = workbook.createSheet("Sheet1");
            // 創(chuàng)建第一行
            XSSFRow row = sheet.createRow(0);
            // 創(chuàng)建第一行的第一個單元格,并設(shè)置值
            XSSFCell cell = row.createCell(0);
            cell.setCellValue("Hello, World!");
            // 創(chuàng)建第二行
            XSSFRow row2 = sheet.createRow(1);
            // 創(chuàng)建第二行的第一個單元格,并設(shè)置值
            XSSFCell cell2 = row2.createCell(0);
            cell2.setCellValue("這是第二行");
            // 將工作簿寫入到文件中
            try (FileOutputStream outputStream = new FileOutputStream("output.xlsx")) {
                workbook.write(outputStream);
            }
            System.out.println("Excel文件已成功創(chuàng)建并寫入數(shù)據(jù)");
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                // 關(guān)閉workbook
                if (workbook != null) {
                    workbook.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

四、POI操作Word

4.1讀取 Word 文件

Apache POI 也可以用于讀取 Word 文件的內(nèi)容。

import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import java.io.FileInputStream;
import java.io.IOException;
public class WordReader {
    public static void main(String[] args) {
        try (FileInputStream fis = new FileInputStream("example.docx");
             XWPFDocument document = new XWPFDocument(fis)) {
            XWPFWordExtractor extractor = new XWPFWordExtractor(document);
            String text = extractor.getText();
            System.out.println(text);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

4.2寫入 Word 文件

寫入 Word 文件也可以通過 Apache POI 來實現(xiàn)。

import org.apache.poi.xwpf.usermodel.*;
import java.io.FileOutputStream;
import java.io.IOException;
public class WordWriter {
    public static void main(String[] args) {
        // 創(chuàng)建文檔
        XWPFDocument document = new XWPFDocument();
        // 創(chuàng)建段落
        XWPFParagraph paragraph = document.createParagraph();
        XWPFRun run = paragraph.createRun();
        run.setText("這是一個示例文檔。");
        // 寫入文件
        try (FileOutputStream fos = new FileOutputStream("output.docx")) {
            document.write(fos);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

五、深入學(xué)習(xí)

如果想要深入學(xué)習(xí) Apache POI,可以參考官方文檔:https://poi.apache.org/

到此這篇關(guān)于Apache POI用法示例詳解的文章就介紹到這了,更多相關(guān)Apache POI用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Windows下 Apache PHP 環(huán)境搭建的方法

    Windows下 Apache PHP 環(huán)境搭建的方法

    經(jīng)常在 Linux 環(huán)境下搭建 php 環(huán)境,在 windows 下還是第一次,沒啥技術(shù)含量,就是記錄一下,需要的朋友參考下本教程
    2017-01-01
  • CentOS7環(huán)境中DHCP配置教程

    CentOS7環(huán)境中DHCP配置教程

    大家好,本篇文章主要講的是CentOS7環(huán)境中DHCP配置教程,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-11-11
  • Ubuntu 18.04上安裝 phpMyAdmin的詳細教程

    Ubuntu 18.04上安裝 phpMyAdmin的詳細教程

    這篇文章主要介紹了Ubuntu 18.04上安裝 phpMyAdmin的詳細教程,本文通過圖文并茂的形式給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-12-12
  • Linux多塊硬盤如何掛載到同一目錄

    Linux多塊硬盤如何掛載到同一目錄

    文章介紹了如何使用LVM(邏輯卷管理)將多塊硬盤合并為一個邏輯卷,并詳細描述了操作流程,包括創(chuàng)建物理卷、卷組和邏輯卷,以及格式化和掛載邏輯卷
    2025-02-02
  • 詳解Linux 主機網(wǎng)絡(luò)接入配置

    詳解Linux 主機網(wǎng)絡(luò)接入配置

    這篇文章主要介紹了詳解Linux 主機網(wǎng)絡(luò)接入配置的相關(guān)資料,希望通過本文能幫助到大家,讓大家實現(xiàn)網(wǎng)絡(luò)接入配置的功能,需要的朋友可以參考下
    2017-10-10
  • 如何通過其他主機查看Apahce服務(wù)器的運行狀態(tài)

    如何通過其他主機查看Apahce服務(wù)器的運行狀態(tài)

    這篇文章主要介紹了如何通過其他主機查看Apahce服務(wù)器的運行狀態(tài),需要的朋友可以參考下
    2016-04-04
  • 一次Linux修改MySQL配置不生效的問題解決

    一次Linux修改MySQL配置不生效的問題解決

    這篇文章主要給大家介紹了關(guān)于Linux修改MySQL配置不生效問題的解決方法,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用Linux系統(tǒng)具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Apache Shiro 使用手冊(四) Realm 實現(xiàn)

    Apache Shiro 使用手冊(四) Realm 實現(xiàn)

    在認證、授權(quán)內(nèi)部實現(xiàn)機制中都有提到,最終處理都將交給Real進行處理。因為在Shiro中,最終是通過Realm來獲取應(yīng)用程序中的用戶、角色及權(quán)限信息的
    2014-06-06
  • Ubuntu中實現(xiàn)定時喚醒與自動休眠功能

    Ubuntu中實現(xiàn)定時喚醒與自動休眠功能

    在自動化腳本執(zhí)行的時間段內(nèi)喚醒系統(tǒng)使其正常運行,其余時間則讓其進入休眠狀態(tài),以此來降低能耗,為達成這一目標,我編寫了一個簡易的腳本,并通過 crontab 配置了自動化任務(wù),接下來,我會詳盡地講解整個配置過程,需要的朋友可以參考下
    2024-09-09
  • CentOS8.0 網(wǎng)絡(luò)配置的實現(xiàn)

    CentOS8.0 網(wǎng)絡(luò)配置的實現(xiàn)

    這篇文章主要介紹了CentOS8.0 網(wǎng)絡(luò)配置的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10

最新評論