<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          java-excel-utils精簡的 Excel 導入導出工具

          聯(lián)合創(chuàng)作 · 2023-09-30 20:16

          java-excel-utils是JAVA操作 Excel 導入導出的工具類,目的是簡化邏輯操作、可拓展 Excel 導入導出配置。

          功能:

          1、自定義導入數(shù)據(jù)格式,支持配置時間、小數(shù)點類型(支持單/多sheet)              
          2、瀏覽器導出Excel文件、模板文件(支持單/多sheet)           
          3、指定路徑生成Excel文件(支持單/多sheet)           
          4、自定義樣式:行、列、某個單元格(字體大小、字體顏色、左右對齊、居中、是否忽略邊框。支持單/多sheet)           
          5、自定義固定表頭(支持單/多sheet)            
          6、自定義下拉列表值(支持單/多sheet)           
          7、自定義合并單元格、自定義列寬、自定義大標題(支持單/多sheet)
          8、導出圖片、圖片地址和數(shù)據(jù)一樣,只要是能訪問的圖片都可以導出(有需求、圖片適應大小待解決),圖片格式:.JPEG|.jpeg|.JPG|.jpg|.png|.gif

           教程文檔:https://github.com/andyczy/czy-nexus-commons-utils/blob/master/README-Andyczy.md

          CSDN博客:https://blog.csdn.net/JavaWebRookie/article/details/80843653

          一、導出配置。

          設置列寬舉例:

          HashMap mapColumnWidth = new HashMap<>();
          HashMap mapColumn = new HashMap<>();
          //自定義列寬
          mapColumn.put(0, 3);     //第一列、寬度為3
          mapColumn.put(1, 20);    //有人會問寬度3是多寬?兩個中文剛剛好,設置序號的大小  
          mapColumn.put(2, 15);    //樣式多調(diào)就好了,沒有什么事就一下次弄好的,而且是美觀上。
          mapColumnWidth.put(1, mapColumn);  //第一個單元格列寬

          設置表頭舉例:

          HashMap setPaneMap = new HashMap();
          setPaneMap.put(1, 3);     //第一個表格、第三行開始固定表頭

          設置數(shù)據(jù)舉例:(假設數(shù)據(jù))

          List>   dataLists = new ArrayList<>();   //多表格數(shù)據(jù)

          導出表格sheet名稱:

          String[] sheetNameList = new String[]{"今日交易記錄","今日交易明細"};   //兩個表格、可多個

          方式一:導出使用函數(shù) ExcelUtils.exportForExcelsOptimize() 和 LocalExcelUtils.exportForExcelsOptimize()

              //【推薦使用該方式】【建議大數(shù)據(jù)量下不要過多設置樣式】
                   
              ExcelUtils excelUtils = ExcelUtils.initialization();
              // 必填項--導出數(shù)據(jù)(參數(shù)請看下面的格式)
              excelUtils.setDataLists(dataLists);   
              // 必填項--sheet名稱(如果是多表格導出、sheetName也要是多個值!)
              excelUtils.setSheetName(sheetNameList);
              // 文件名稱(可為空,默認是:sheet 第一個名稱)
              excelUtils.setFileName(excelName);
              
              // web項目response響應輸出流:必須填 【ExcelUtils 對象】
              excelUtils.setResponse(response);
              
              // 輸出本地【LocalExcelUtils 對象】
              // excelUtils.setFilePath("F://test.xlsx");
          
              // 每個表格的大標題(可為空)
              excelUtils.setLabelName(labelName);
              // 自定義:固定表頭(可為空)
              excelUtils.setPaneMap(setPaneMap);
              // 自定義:單元格合并(可為空)
              excelUtils.setRegionMap(regionMap);
              
              // 自定義:對每個單元格自定義列寬(可為空)
              excelUtils.setMapColumnWidth(mapColumnWidth);
              // 自定義:某一行樣式(可為空)
              excelUtils.setRowStyles(stylesRow);
              // 自定義:某一列樣式(可為空)
              excelUtils.setColumnStyles(columnStyles);
              // 自定義:每一個單元格樣式(可為空)
              excelUtils.setStyles(styles);
                      
              // 自定義:對每個單元格自定義下拉列表(可為空)
              excelUtils.setDropDownMap(dropDownMap);
              // 自定義:忽略邊框(可為空:默認是有邊框)
              excelUtils.setNotBorderMap(notBorderMap);       
                  
              // 執(zhí)行導出
              excelUtils.exportForExcelsOptimize();

          方式三:導出函數(shù) ExcelUtils.exportForExcelsNoStyle() 和 LocalExcelUtils.exportForExcelsNoStyle()

          無樣式(行、列、單元格樣式)推薦使用這個函數(shù)、樣式設置過多會影響速度

          導入使用函數(shù): ExcelUtils.importForExcelData(......) 和 LocalExcelUtils.importForExcelData(......)

              * 獲取多單元數(shù)據(jù)         
              * 自定義:多單元從第幾行開始獲取數(shù)據(jù)【看本文最底下參數(shù)說明】            
              * 自定義:多單元根據(jù)那些列為空來忽略行數(shù)據(jù)【看本文最底下參數(shù)說明】

          ExcelUtils 對象與 LocalExcelUtils 區(qū)別。

          ExcelUtils:     web響應有  response
          LocalExcelUtils:本地輸出沒 response

          Test 測試【新增本地測試】

          方式四:導出函數(shù) ExcelUtils.exportForExcel(......) 過期注解

              * 可提供模板下載           
              * 自定義下拉列表:對每個單元格自定義下拉列表         
              * 自定義列寬:對每個單元格自定義列寬         
              * 自定義樣式:對每個單元格自定義樣式  
              * 自定義樣式:單元格自定義某一列或者某一行樣式            
              * 自定義單元格合并:對每個單元格合并 
              * 自定義:每個表格的大標題          
              * 自定義:對每個單元格固定表頭

          二、導入配置。

          有的人會問了,為什么這個導入沒有轉(zhuǎn)換成對象呢?我是覺得不好用,因為導入導出都是公用的,而且都是多表格,也沒必要轉(zhuǎn)換也有空拿到值。

          9、導入配置:(第幾行開始獲取數(shù)據(jù)) 參數(shù) indexMap

             參數(shù)說明:多單元從第幾行開始獲取數(shù)據(jù),默認從第二行開始獲取(可為空)
             HashMap hashMapIndex = new HashMap();
             hashMapIndex.put(1,3);  //  第一個表格從第三行開始獲取

          10、導入配置:(列為空來忽略行數(shù)據(jù)) 參數(shù) continueRowMap

             參數(shù)說明:多單元根據(jù)那些列為空來忽略行數(shù)據(jù)(可為空)
             HashMap mapContinueRow = new HashMap();
             mapContinueRow.put(1,new Integer[]{1, 3});  // 第一個表格第1、3列為空就忽略這行數(shù)據(jù)

          11、導入時間格式(默認:yyyy-MM-dd)、導入數(shù)字保留的小數(shù)點(默認:#.###### 六位)

              ExcelUtils excelUtils = ExcelUtils.initialization();
              excelUtils.setNumeralFormat("#.####");                  // (可為空)期望保留小數(shù)的位數(shù)(#.####)這樣保留四位。
              // (可為空) (poi 只接受無中文的日期格式、如果你想轉(zhuǎn)換別的格式,這個參數(shù)要和導入表中日期格式類似,如表格中為:2019年02月14日 12時12分)。
              excelUtils.setDateFormatStr("yyyy年MM月dd日 HH時mm分"); 
              excelUtils.setExpectDateFormatStr("yyyy-MM-dd HH-mm");  // (可為空、默認的值是:dateFormatStr 參數(shù)值) 期望轉(zhuǎn)換后的日期格式。
              // 執(zhí)行導入函數(shù)   ExcelUtils.importForExcelData()

          導入獲取數(shù)據(jù):(支持多表格數(shù)據(jù))

          for(........){    // 偽代碼
          
              String accountNo = hashMapList.get(j).get("0");     //  獲取到Excel表格中第一列數(shù)據(jù)
          
              //  多表格數(shù)據(jù)、想怎么處理怎么處理,這就是不想轉(zhuǎn)成對象的原因
          
          }

          POM  Maven 引入依賴:(推薦使用最新版本)

                 com.github.andyczy

                 java-excel-utils

                 4.0

          瀏覽 23
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧洲三级片在线 | 2027AV天堂 | 肏屄视频小说 | 一级二级在线观看网站 | 国产激情视视频 |