Java利用POI匯入匯出Excel中的資料

來源:互聯網
上載者:User

標籤:

     首先談一下今天發生的一件開心的事,本著一顆android的心我被分配到了PB組,身在曹營心在漢啊!好吧,今天要記錄和分享的是Java利用POI匯入匯出Excel中的資料。下面POI包的http://poi.apache.org/download.html,有興趣的朋友也可以去看看其中的API。

     下面分享一下在對POI進行基本操作時覺得需要注意的兩點:

      1.POI中針對xlsx/xls是需要create different Workbook instance HSSFWorkbook是針對xls XSSFWorkbook是針對xlsx的。

   1:  String fileaddress="E:/部落格統計.xlsx"; //讀取Excel地址
   2:  XSSFWorkbook wb=null;
   3:  File f = new File(fileaddress);// 讀取excel檔案
   4:  FileInputStream is = new FileInputStream(f);// 建立檔案流
   5:  if(fileaddress.toLowerCase().endsWith("xlsx")){
   6:       wb = new XSSFWorkbook(is);  //如果xlsx版本的就建立XSSFWorkbook對象
   7:  } else if(fileName.toLowerCase().endsWith("xls")){  
   8:       wb = new HSSFWorkbook(is);  //如果xls版本的就建立HSSFWorkbook對象
   9:  }

      2.在向Excel中匯入資料時需要明白sheet中是否有row這個對象,如果有的話就getRow(),gerCell(),setCellValue(),沒有的話就需要createRow(),createCell(),setCellValue().

   1:    XSSFSheet sheet = wb.getSheetAt(1); // 第一個工作表  
   2:    int lastrow = sheet.getLastRowNum() + 1;   
   3:    if(rowindex_<lastrow){    
   4:      XSSFRow row = sheet.getRow(rowindex_);// 獲得行對象             
   5:      row.getCell(0).setCellValue(bolgname2);      
   6:      row.getCell(1).setCellValue(linktime2);    
   7:      row.getCell(2).setCellValue(linktitle2);      
   8:      row.getCell(3).setCellValue(linkresult2);     
   9:      row.getCell(4).setCellValue(linkred2);      
  10:      row.getCell(5).setCellValue(linkpinglun2);      
  11:      row.getCell(6).setCellValue(tuijianString2);      
  12:      row.getCell(7).setCellValue(fanduiString2);      
  13:      }            
  14:      else{      
  15:       XSSFRow row = sheet.createRow(rowindex_);    
  16:       row.createCell(0).setCellValue(bolgname2);    
  17:       row.createCell(1).setCellValue(linktime2);   
  18:       row.createCell(2).setCellValue(linktitle2);   
  19:       row.createCell(3).setCellValue(linkresult2);   
  20:       row.createCell(4).setCellValue(linkred2);    
  21:       row.createCell(5).setCellValue(linkpinglun2);    
  22:       row.createCell(6).setCellValue(tuijianString2);    
  23:       row.createCell(7).setCellValue(fanduiString2);    
  24:         }
     3.關閉流
   1:  FileOutputStream fileOut = new FileOutputStream(fileaddress);
   2:          wb.write(fileOut);
   3:          is.close();
   4:          fileOut.close();

       最後今天對部落格統計修複了一個bug,發現Regex在控制字元串格式時很給力但是水很深需要好好學習,就把他當成下一個學習目標,然後下一次解決問題時,腦子裡迸出來的就是他。

Java利用POI匯入匯出Excel中的資料

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.