Spring Boot實現將Word中的表格轉換成Excel表格?

2024年04月11日21:15:55 科技 1337

Spring Boot實現將Word中的表格轉換成Excel表格? - 天天要聞

你可以使用Apache POI庫來處理Word和Excel文件。在Spring Boot應用中,你可以使用POI來讀取Word中的表格內容,然後創建一個新的Excel文件並將表格內容寫入其中。

引入依賴

首先,你需要在你的Spring Boot項目中添加Apache POI的依賴。在你的pom.xml文件中添加以下依賴

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

創建轉換服務

接下來,創建一個Spring Boot的服務類來實現Word轉Excel的功能:

@Service
public class WordToExcelService {

    public void convertWordToExcel(String wordFilePath, String excelFilePath) throws IOException, InvalidFormatException {
        FileInputStream fis = new FileInputStream(wordFilePath);
        XWPFDocument document = new XWPFDocument(fis);

        Workbook workbook = new XSSFWorkbook();
        Sheet sheet = workbook.createSheet("Sheet1");

        int rowNum = 0;

        for (XWPFTable table : document.getTables()) {
            for (int i = 0; i < table.getRows().size(); i++) {
                Row row = sheet.createRow(rowNum++);
                for (int j = 0; j < table.getRow(i).getTableCells().size(); j++) {
                    String cellValue = table.getRow(i).getCell(j).getText();
                    Cell cell = row.createCell(j);
                    cell.setCellValue(cellValue);
                }
            }
        }

        FileOutputStream fos = new FileOutputStream(excelFilePath);
        workbook.write(fos);

        fis.close();
        fos.close();
        workbook.close();
        document.close();
    }
}

編寫Controller類

然後,創建一個Controller類來接收請求,並調用WordToExcelService來執行Word轉Excel的操作。

@RestController
public class WordToExcelController {

    @Autowired
    private WordToExcelService wordToExcelService;

    @PostMapping("/convert")
    public ResponseEntity<String> convertWordToExcel(@RequestParam("wordFilePath") String wordFilePath,
                                                     @RequestParam("excelFilePath") String excelFilePath) {
        try {
            wordToExcelService.convertWordToExcel(wordFilePath, excelFilePath);
            return ResponseEntity.ok("Word轉Excel轉換成功!");
        } catch (IOException | InvalidFormatException e) {
            e.printStackTrace();
            return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body("轉換失敗:" + e.getMessage());
        }
    }
}

總結

到這裡,啟動項目,發送一個POST請求到/convert路徑,同時提供Word文件的路徑wordFilePath和Excel文件的路徑excelFilePath時,它將會執行Word轉Excel的操作。可以在Spring Boot應用中調用這個接口來實現你的需求。當然在實際使用的場景中,需要注意適當處理異常情況,比如文件路徑錯誤、文件不存在等。來保證你的程序的健壯性。

科技分類資訊推薦

闊步向“新”行 奮力“打頭陣” - 天天要聞

闊步向“新”行 奮力“打頭陣”

為更好貫徹落實省委全會精神,本報今起推出“堅決扛好經濟大省挑大樑責任·評論員連線”欄目,緊扣“四個着力點”,由新華日報評論員連線13個設區市黨報評論員,以“對話+解析”形式立體展現全省各地牢記囑託、感恩奮進、走在前列的最新實踐。
小米MIX Flip真機暴擊:外屏香到想秒下單 內屏摺痕把我勸退了 - 天天要聞

小米MIX Flip真機暴擊:外屏香到想秒下單 內屏摺痕把我勸退了

小米老用戶第一次摸MIX Flip,當場被外屏種草,但仔細盤了盤細節又冷靜下來…咱今兒不扯虛的,用「想沖」和「想退」兩面嘮明白。先聊優點,摸過真機才敢這麼說:外屏是真·剛需設計,4.01英寸外屏刷抖音不用展開,折成支架放桌上追劇特方便,比拿直板機省勁兒,後置鏡頭自拍時外屏能當預覽屏,拍人清楚,徠卡影調顏色不誇張...
新能源車產能過剩的時代提前到來,特斯拉能避免頹勢嗎? - 天天要聞

新能源車產能過剩的時代提前到來,特斯拉能避免頹勢嗎?

目前的消息是,為加快補齊鄉村地區新能源汽車消費使用短板,工信部、國家發改委、農業農村部、商務部、國家能源局組織開展2025年新能源汽車下鄉活動。這背後,就是新能源車產能過剩的時代提前到來,需要開拓新的市場。在這次“下鄉”活動中,特斯拉也參與
榮耀400系列今日開售:國補售價2124元起 全系2億主攝 - 天天要聞

榮耀400系列今日開售:國補售價2124元起 全系2億主攝

站長之家(ChinaZ.com)6月6日 消息:今日,榮耀400系列正式開啟銷售,該系列包含榮耀400和榮耀400Pro兩款機型,起售價為2499元,在享受國家補貼後,到手價低至2124元起,這一價格在市場上頗具競爭力。在外觀設計上,榮耀400系列提供了海風藍、流沙粉、攬月銀、幻夜黑4款配色供消費者選擇。其中,海風藍和流沙粉兩款配色採用...
特朗普政府將“AI安全研究所”去“安全化” - 天天要聞

特朗普政府將“AI安全研究所”去“安全化”

特朗普政府將“AI安全研究所”去“安全化”,更名為“人工智能標準與創新中心”……特朗普政府宣布對聯邦政府主要人工智能監管機構進行重大改組,標誌着華盛頓在 AI 監管和安全方面的政策方向發生了劇烈轉變。商務部長霍華德·勒特尼克(Howard Lutnick)周二表示,由前總統喬·拜登於 2023 年 11 月設立的美國人工智能安全...
打印店用微信傳輸要留意個人隱私引熱議:務必記得刪除 - 天天要聞

打印店用微信傳輸要留意個人隱私引熱議:務必記得刪除

站長之家(ChinaZ.com)6月6日 消息:日前,微博上一則關於打印店使用微信傳輸文件時需留意個人隱私的話題引髮網友廣泛討論。騰訊員工“客村小蔣”發文指出,在打印店等公共場所的電腦上登錄微信傳輸文件存在隱私風險,不過這一問題有相應的解決方法。“客村小蔣”介紹,當需要在打印店電腦或其他公共電腦上登錄微信時,用戶...
華為MateBook Pro鴻蒙筆記本今日開售:7999元起 - 天天要聞

華為MateBook Pro鴻蒙筆記本今日開售:7999元起

站長之家(ChinaZ.com)6月6日 消息:今日10:08,全球首款搭載鴻蒙操作系統的PC產品——華為MateBook Pro鴻蒙筆記本正式開啟銷售。華為MateBook Pro鴻蒙筆記本在原有MateBook X Pro的基礎上進行了全面優化升級,核心亮點在於搭載了全新的HarmonyOS5鴻蒙電腦操作系統。該筆記本配備了一塊14.2英寸的觸控屏,分辨