<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    魔獸傳奇

    java程序愛好者
    posts - 28, comments - 16, trackbacks - 0, articles - 6
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    java替換Excel字符

    Posted on 2018-03-23 20:42 龍旋風 閱讀(580) 評論(0)  編輯  收藏
    1. //模板路徑

      String modelPath="D:\Excel.xls" 

      //sheet的名字

      String sheetName="sheet1";

      獲取Excel模板對象

       try {  

                  File file = new File(modelPath);  

                  if(!file.exists()){  

                      System.out.println("模板文件:"+modelPath+"不存在!");  

                  }  

                  fs = new POIFSFileSystem(new FileInputStream(file));  

                  wb = new HSSFWorkbook(fs);  

                  sheet = wb.getSheet(sheetName);  

              } catch (FileNotFoundException e) {  

                  e.printStackTrace();  

              } catch (IOException e) {  

                  e.printStackTrace();  

              }

    2. //從heet中獲取行數

      int rowNum = sheet.getLastRowNum();

    3. //獲取行里面的總列數

      row = sheet.getRow(i); //i:第I行

      // 獲取行里面的總列數

      int columnNum = 0;

      if(row!=null){

      columnNum = row.getPhysicalNumberOfCells();

      }

    4. //獲取單元格的值 

      HSSFCell cell = sheet.getRow(i).getCell(j); //第i行,第j列

      String cellValue = cell.getStringCellValue();

    5. //替換數據   本人的數據存放在Map中

      for (Entry<String, Object> entry : param.entrySet()) {

              String key = entry.getKey();

              if(key.equals(cellValue)){

                      String value = entry.getValue().toString();

                      setCellStrValue(i, j, value);//設置第i行,第j列的值為Value

              }

      }

    6. 完整代碼:

          /**

           * 替換Excel模板中的數據

           * @param sheetName Sheet名字

           * @param modelPath 模板路徑

           * @param param 需要替換的數據

           * @return

           * @author 劉澤中

           * @Date: 2015年12月11日

           */

          public HSSFWorkbook replaceExcel(String sheetName,String modelPath,Map<String, Object> param){

          //獲取所讀取excel模板的對象

              try {  

                  File file = new File(modelPath);  

                  if(!file.exists()){  

                      System.out.println("模板文件:"+modelPath+"不存在!");  

                  }  

                  fs = new POIFSFileSystem(new FileInputStream(file));  

                  wb = new HSSFWorkbook(fs);  

                  sheet = wb.getSheet(sheetName);  

              } catch (FileNotFoundException e) {  

                  e.printStackTrace();  

              } catch (IOException e) {  

                  e.printStackTrace();  

              } 

          replaceExcelDate(param);

          return wb;

          }

          /**

           * 根據 Map中的數據替換Excel模板中指定數據

           * @param param 

           * @author 劉澤中

           * @Date: 2015年12月11日

           */

          public void replaceExcelDate(Map<String, Object> param){

      // 獲取行數

      int rowNum = sheet.getLastRowNum();

      for (int i = 0; i < rowNum; i++) {

      row = sheet.getRow(i);

      // 獲取行里面的總列數

      int columnNum = 0;

      if(row!=null){

      columnNum = row.getPhysicalNumberOfCells();

      }

      for (int j = 0; j < columnNum; j++) {

      HSSFCell cell = sheet.getRow(i).getCell(j);

      String cellValue = cell.getStringCellValue();

      for (Entry<String, Object> entry : param.entrySet()) {

      String key = entry.getKey();

      if(key.equals(cellValue)){

      String value = entry.getValue().toString();

      setCellStrValue(i, j, value);

      }

      }

      }

      }

          }

          /** 

           * 設置字符串類型的數據 

           * @param rowIndex--行值 從0開始

           * @param cellnum--列值  從0開始

           * @param value--字符串類型的數據 

           * 

           * @author 劉澤中

           * @Date: 2015年12月11日

           */  

          public void setCellStrValue(int rowIndex, int cellnum, String value) {  

              HSSFCell cell = sheet.getRow(rowIndex).getCell(cellnum);  

              cell.setCellValue(value);  

          }


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲国产精品lv| 在线观看亚洲精品福利片| 国产成人在线观看免费网站| 日本免费一区尤物| 亚洲一区二区视频在线观看| 亚洲无线码在线一区观看| 亚洲国产一区在线| 亚洲国产成人久久综合一区| 亚洲私人无码综合久久网| 免费人妻精品一区二区三区| 精品在线免费观看| 91精品视频免费| 国产一级淫片视频免费看| 亚洲中文字幕无码永久在线| 亚洲精品第一国产综合精品 | 国产婷婷高清在线观看免费| 久久精品亚洲福利| 亚洲精品国产电影午夜| 欧洲亚洲综合一区二区三区| 免费久久人人爽人人爽av | 中出五十路免费视频| 久久精品中文字幕免费| 美女视频黄免费亚洲| 丁香亚洲综合五月天婷婷| 亚洲AV无码AV男人的天堂| 国产成人亚洲合集青青草原精品| 在线亚洲v日韩v| 一级特黄aa毛片免费观看| 成人免费午夜视频| 亚洲免费观看视频| 亚洲AV成人一区二区三区在线看| 国产精品内射视频免费| 69视频免费在线观看| 亚洲Av无码国产情品久久| 久久久久亚洲av无码专区导航| 亚洲乱亚洲乱妇24p| 久久这里只精品99re免费| 日韩一区二区在线免费观看| 亚洲阿v天堂在线| 亚洲av永久无码| 日韩内射激情视频在线播放免费|