[java]利用poi寫入(產生)Excel檔案

前一篇已經介紹過如何讀取檔案了,那再來看寫入Excel xls檔應該就容易多了,

如何讀取Excel xls檔做處理可以參考[java]利用poi讀取Excel檔

寫入(產生)Excel的範例程式碼如下:

概今大概是把Excel看成一個大的table表,先指定要在那一行那一列,

再把資料寫到這個cell裡。

public void writeExcel()  { 
      FileOutputStream fos ; 
        POIFSFileSystem fs ; 
        HSSFWorkbook wb ; 

        try 
        { 
          this.filePath = "c:/abc.xls"; 
          java.io.File f = new java.io.File(filePath); 
          //if(!f.exists()) 
            //f.createNewFile(); 
          fos = new FileOutputStream(f); 
          
          fs = new POIFSFileSystem(); 
          
          wb = new HSSFWorkbook(); 
          HSSFSheet sheet = wb.createSheet(); 
          HSSFCell cell; 
      int count = 3; 

            HSSFRow row = sheet.createRow(rs.getRow()); 
            for(int i = 1 ; i <= count ; i ++) 
            { 
              cell = row.createCell(i); 
              org.apache.poi.hssf.usermodel.HSSFRichTextString str = 
                new org.apache.poi.hssf.usermodel.HSSFRichTextString(i); 
              cell.setCellValue(str); 
            } 
            
          } 
          
          fs.writeFilesystem(fos); 
          fos.flush(); 
          fos.close(); 

        }catch(java.io.IOException e) 
        { 
          e.printStackTrace(); 
        } 
        catch(java.sql.SQLException e) 
        { 
          e.printStackTrace(); 
        } 
        finally 
        { 
          
        } 
}

2 thoughts to “[java]利用poi寫入(產生)Excel檔案”

  1. 請問你中間有行程式碼
    HSSFRow row = sheet.createRow(rs.getRow());
    裡面的rs.getRow()是做什麼用的
    rs這個變數又是怎麼來的…
    請解釋一下好嗎= =
    謝謝

    1. 應該是程式碼沒注意到
      rs.getRow()那本來是我去抓資料庫的資料的ResultSet
      這裡你可以改成資料的編號行

      1
      2
      3
      4
      先createRow之後才能在row裡cell裡存資料

yku 發表迴響取消回覆