最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Java將CSV文件轉(zhuǎn)換為格式化的Excel文件

 更新時(shí)間:2025年12月09日 09:55:05   作者:大丸子  
在日常的數(shù)據(jù)處理和報(bào)表生成工作中,CSV 格式因其簡潔性而被廣泛采用,但在展示數(shù)據(jù)時(shí),CSV 文件往往缺乏格式和結(jié)構(gòu)化樣式,不利于閱讀與分析,所以本文將介紹如何使用 Java 將 CSV 文件轉(zhuǎn)換為 Excel 文件,需要的朋友可以參考下

引言

在日常的數(shù)據(jù)處理和報(bào)表生成工作中,CSV 格式因其簡潔性而被廣泛采用。但在展示數(shù)據(jù)時(shí),CSV 文件往往缺乏格式和結(jié)構(gòu)化樣式,不利于閱讀與分析。相比之下,Excel 格式(如 .xlsx)不僅支持豐富的樣式設(shè)置,還可直接用于報(bào)表分發(fā)和打印。

本文將介紹如何使用 Java 將 CSV 文件轉(zhuǎn)換為 Excel 文件,并根據(jù)需求添加樣式優(yōu)化,讓輸出結(jié)果更美觀、更專業(yè)。

  • 將 CSV 轉(zhuǎn)換為 Excel(.xlsx)
  • 轉(zhuǎn)換并格式化Excel輸出樣式

安裝依賴

在使用前,需要將 JAR 包引入項(xiàng)目。你可以在 Free Spire.XLS for Java 官方網(wǎng)站 下載,也可以通過 Maven 集成:

<dependency>
    <groupId>e-iceblue</groupId>
    <artifactId>spire.xls.free</artifactId>
    <version>5.3.0</version>
</dependency>

示例 1:快速將 CSV 轉(zhuǎn)換為 Excel

如果只是將 CSV 文件轉(zhuǎn)換為 .xlsx 文件,無需任何格式調(diào)整,可以使用如下簡單代碼實(shí)現(xiàn):

import com.spire.xls.*;

public class CsvToXlsx {
    public static void main(String[] args) {
        Workbook workbook = new Workbook();
        workbook.loadFromFile("data.csv", ",");
        workbook.saveToFile("output.xlsx", ExcelVersion.Version2013);
    }
}

上述代碼會將 data.csv 轉(zhuǎn)換為 Excel 文件,保留原始內(nèi)容結(jié)構(gòu),默認(rèn)編碼為 UTF-8。如果你的 CSV 使用的是其他分隔符(如分號),可以通過調(diào)整第二個(gè)參數(shù)來修改。

示例 2:轉(zhuǎn)換并格式化輸出樣式

在實(shí)際業(yè)務(wù)中,我們往往希望輸出的 Excel 更具可讀性,例如將表頭加粗、設(shè)置背景色、為數(shù)字列添加格式等。下面的示例展示了如何在轉(zhuǎn)換后進(jìn)行樣式優(yōu)化:

import com.spire.xls.*;

public class CsvToXlsx {
    public static void main(String[] args) {
        Workbook workbook = new Workbook();
        workbook.loadFromFile("data.csv", ",");

        Worksheet sheet = workbook.getWorksheets().get(0);

        // 設(shè)置表頭樣式(第一行)
        CellStyle headerStyle = workbook.getStyles().addStyle("Header");
        headerStyle.getFont().isBold(true);
        headerStyle.setKnownColor(ExcelColors.LightYellow);
        for (int col = 1; col <= sheet.getLastColumn(); col++) {
            sheet.getCellRange(1, col).setStyle(headerStyle);
        }

        // 設(shè)置數(shù)字列格式(示例中為 B 列)
        CellStyle numStyle = workbook.getStyles().addStyle("Numbers");
        numStyle.setNumberFormat("#,##0.00");
        sheet.getCellRange("B2:B100").setStyle(numStyle);

        // 自動適應(yīng)所有列寬
        for (int i = 1; i <= sheet.getLastRow(); i++) {
            sheet.autoFitColumn(i);
        }

        workbook.saveToFile("formatted_output.xlsx", ExcelVersion.Version2013);
    }
}

這段代碼主要完成了三項(xiàng)增強(qiáng):

  • 表頭高亮:加粗文字并設(shè)置淺黃色背景;
  • 數(shù)字列格式化:以千分位并保留兩位小數(shù)方式展示;
  • 列寬自適應(yīng):根據(jù)內(nèi)容長度自動調(diào)整寬度,避免文本截?cái)唷?/li>

效果對比

未格式化版本:

簡單格式化后的 Excel:

并且表頭具備背景色,更加清晰醒目。

總結(jié)

通過本文示例,你可以輕松地將 CSV 文件轉(zhuǎn)換為 Excel 文檔,并添加基本的樣式和格式,提升數(shù)據(jù)的可視化效果。無論是用于內(nèi)部報(bào)表、客戶數(shù)據(jù)導(dǎo)出,還是定期自動化輸出,Spire.XLS for Java 都能為你提供高效且靈活的解決方案。

以上就是使用Java將CSV文件轉(zhuǎn)換為格式化的Excel文件的詳細(xì)內(nèi)容,更多關(guān)于Java CSV文件轉(zhuǎn)換Excel的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • java使用Socket類接收和發(fā)送數(shù)據(jù)

    java使用Socket類接收和發(fā)送數(shù)據(jù)

    Socket類是負(fù)責(zé)處理客戶端通信的Java類。本文主要是介紹java使用Socket類接收和發(fā)送數(shù)據(jù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2016-10-10
  • java日期處理工具類

    java日期處理工具類

    這篇文章主要為大家詳細(xì)介紹了java日期處理工具類,其次還介紹了日期處理的基礎(chǔ)知識,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-05-05
  • SpringBoot基于Mybatis-Plus自動代碼生成

    SpringBoot基于Mybatis-Plus自動代碼生成

    這篇文章主要介紹了SpringBoot基于Mybatis-Plus自動代碼生成,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • java自動裝箱拆箱深入剖析

    java自動裝箱拆箱深入剖析

    基本數(shù)據(jù)(Primitive)類型的自動裝箱(autoboxing)、拆箱(unboxing)是自J2SE 5.0開始提供的功能。java語言規(guī)范中說道:在許多情況下包裝與解包裝是由編譯器自行完成的(在這種情況下包裝成為裝箱,解包裝稱為拆箱)
    2012-11-11
  • redis scan命令導(dǎo)致redis連接耗盡,線程上鎖的解決

    redis scan命令導(dǎo)致redis連接耗盡,線程上鎖的解決

    這篇文章主要介紹了redis scan命令導(dǎo)致redis連接耗盡,線程上鎖的解決,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • java實(shí)現(xiàn)簡單音樂播放器

    java實(shí)現(xiàn)簡單音樂播放器

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)簡單音樂播放器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • 詳解Java8新特性如何防止空指針異常

    詳解Java8新特性如何防止空指針異常

    要說 Java 編程中哪個(gè)異常是你印象最深刻的,那 NullPointerException 空指針可以說是臭名昭著的,不要說初級程序員會碰到, 即使是中級,專家級程序員稍不留神,就會掉入這個(gè)坑里,本文就和大家聊聊Java8新特性如何防止空指針異常
    2023-08-08
  • 全面解析Hibernate關(guān)聯(lián)操作、查詢操作、高級特性、并發(fā)處理機(jī)制

    全面解析Hibernate關(guān)聯(lián)操作、查詢操作、高級特性、并發(fā)處理機(jī)制

    這篇文章主要介紹了全面解析Hibernate關(guān)聯(lián)操作、查詢操作、高級特性、并發(fā)處理機(jī)制的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-06-06
  • javaweb Servlet開發(fā)總結(jié)(二)

    javaweb Servlet開發(fā)總結(jié)(二)

    這篇文章主要為大家詳細(xì)介紹了javaweb Servlet開發(fā)總結(jié)的第二篇,感興趣的小伙伴們可以參考一下
    2016-05-05
  • Java基礎(chǔ)教程之封裝與接口

    Java基礎(chǔ)教程之封裝與接口

    這篇文章主要介紹了Java基礎(chǔ)教程之封裝與接口,本文用淺顯易懂的語言講解了Java中的封裝與接口,很形象的說明了這兩個(gè)面向?qū)ο笮g(shù)語,需要的朋友可以參考下
    2014-08-08

最新評論

朝阳市| 富蕴县| 宁津县| 育儿| 沁源县| 乌兰浩特市| 沈丘县| 通城县| 安陆市| 宜兰市| 南宫市| 民乐县| 武功县| 古丈县| 额尔古纳市| 清徐县| 兴安县| 渝北区| 卓资县| 高州市| 静宁县| 昌吉市| 普陀区| 太湖县| 眉山市| 格尔木市| 永州市| 湖州市| 湘潭市| 孝感市| 涞源县| 左云县| 固安县| 辉南县| 鱼台县| 定西市| 于田县| 彭州市| 南郑县| 崇左市| 新乡县|