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應用中調用這個接口來實現你的需求。當然在實際使用的場景中,需要注意適當處理異常情況,比如文件路徑錯誤、文件不存在等。來保證你的程序的健壯性。

科技分類資訊推薦

還是賣爆了!跌價2500元後iPhone16 Pro衝上第一,不服不行 - 天天要聞

還是賣爆了!跌價2500元後iPhone16 Pro衝上第一,不服不行

最近,蘋果手機在國內市場的銷量下滑成為了業內的熱門話題。曾幾何時,iPhone的發布總能引發“萬人空巷”的購買熱潮,可如今人們換機周期拉長,新機賣得沒有預期火爆,再加上國產手機品牌層出不窮,為蘋果擠壓了不少市場份額。然而,與其擔心銷量繼續走
京東物流發布618助跑計劃:五大舉措全力保障618 - 天天要聞

京東物流發布618助跑計劃:五大舉措全力保障618

5月15日,“京東618驚喜開放日”舉行,京東宣布,又好又便宜的京東618將於5月底正式開啟。其中,京東物流亞洲一號廣東東莞智能產業園作為分會場之一,也發布了京東物流618“助跑計劃”,全面助力“又好又便宜”的大促物流體驗“又快又省心”!京東物流“助跑計劃”通過211倉配升級、高密度無人車投放、阿里等偏遠地區紛紛開...
高通第四代驍龍7移動平台發布:CPU性能提升27%,NPU性能提升65% - 天天要聞

高通第四代驍龍7移動平台發布:CPU性能提升27%,NPU性能提升65%

5月15日,高通技術公司正式宣布推出最新的第四代驍龍7移動平台(驍龍 7 Gen 4),旨在增強用戶喜愛的多媒體體驗並提供全面的穩健性能。據介紹,驍龍 7 Gen 4 基於4nm製程八核架構,擁有1個2.8 GHz超大核、4個2.4 GHz性能核心和3個1.8 GHz能效核心,Adreno GPU 支持 HLG、HDR10+、HDR10 和 HDR。高通尚未
2025年GitHub平台精選的十大開源MCP服務器深度解析 - 天天要聞

2025年GitHub平台精選的十大開源MCP服務器深度解析

在人工智能生態系統加速迭代的當下,模型與工具間的深度協同已成為技術演進的核心命題。作為連接AI模型與物理世界的核心樞紐,模型上下文協議(Model Context Protocol,MCP)服務器正重塑智能系統的交互範式。
京東之家618啟動“京補萬縣大篷車巡遊” 讓國補優惠觸手可及 - 天天要聞

京東之家618啟動“京補萬縣大篷車巡遊” 讓國補優惠觸手可及

5月15日,“京東618驚喜開放日”在北京、東莞、溫州、宿遷等全國多地同時舉行。京東宣布,又好又便宜的京東618將於5月底正式開啟,全國3000家京東之家、京東手機數碼專賣店、京東電腦數碼專賣店等3C數碼門店同步啟動,將通過“國家補貼+京東補貼+會員專享”三重福利,為消費者打造一場覆蓋線上線下、好物觸手可及的3C數碼煥...
被華為的強大驚嚇了,美國使出最後的毒計 - 天天要聞

被華為的強大驚嚇了,美國使出最後的毒計

美國商務部周二點名華為,發布極其嚴厲的限制措施,警告全世界誰都不要使用華為昇騰910系列芯片,否則將面臨包括監禁、罰款在內後果。這一恐嚇連刑事手段都用上了,極其惡劣。不過老胡認為,這有可能是美國在芯片領域對中國企業濫施淫威“最後的瘋狂”。▲
雷軍最新宣布:小米自研手機SoC芯片,將在5月下旬發布! - 天天要聞

雷軍最新宣布:小米自研手機SoC芯片,將在5月下旬發布!

每經編輯:張錦河5月15日,雷軍在微博發文表示,小米自主研發設計的手機SoC芯片,名字叫玄戒O1,即將在5月下旬發布。據紅星資本局5月14日消息,小米集團創始人雷軍更改微博設置,只允許關注100天以上的粉絲評論。小米SU7 Ultra風波升級,數百名消費者尋求新解決方案近期,一段數位小米SU7 Ultra車主舉着手機訂單要求退車、...