<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);  

          }


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


    網站導航:
     
    主站蜘蛛池模板: 三级网站免费观看| 国产精品免费αv视频| 亚洲精品视频免费在线观看| 亚洲国产精品成人精品无码区| caoporm碰最新免费公开视频| 亚洲国产日韩成人综合天堂| 久久精品国产亚洲AV| 免费欧洲毛片A级视频无风险| 久久亚洲AV成人无码国产最大| 免费毛片网站在线观看| 亚洲一卡2卡3卡4卡乱码 在线| 日韩免费a级毛片无码a∨ | 久久亚洲精品成人av无码网站| 免费无码又爽又刺激网站直播| 久久亚洲AV无码精品色午夜麻| 一区二区三区福利视频免费观看| 亚洲精品日韩中文字幕久久久| 成人无码区免费视频观看| 日韩亚洲翔田千里在线| 亚洲精品国产高清不卡在线| 日本卡1卡2卡三卡免费| 亚洲国产美女精品久久| 暖暖日本免费在线视频| 九九九国产精品成人免费视频| 亚洲乱码国产一区三区| 91香蕉在线观看免费高清| 中文字幕亚洲综合小综合在线| 国产免费人成视频在线观看| 免费看无码特级毛片| 亚洲香蕉久久一区二区| 亚洲精品黄色视频在线观看免费资源| 免费久久人人爽人人爽av | 亚洲av无码一区二区三区天堂| 亚洲国产成人VA在线观看| 久久青草免费91线频观看不卡| 亚洲中文字幕人成乱码| 亚洲国产V高清在线观看| 91久久成人免费| 特a级免费高清黄色片| 亚洲综合免费视频| 亚洲国产91精品无码专区|