前一篇已經介紹過如何讀取檔案了,那再來看寫入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 { } }
請問你中間有行程式碼
HSSFRow row = sheet.createRow(rs.getRow());
裡面的rs.getRow()是做什麼用的
rs這個變數又是怎麼來的…
請解釋一下好嗎= =
謝謝
應該是程式碼沒注意到
rs.getRow()那本來是我去抓資料庫的資料的ResultSet
這裡你可以改成資料的編號行
如
1
2
3
4
先createRow之後才能在row裡cell裡存資料