如何用jsp產生excel檔案

來源:互聯網
上載者:User
如何用jsp產生excel檔案http://code365.com/tech/10/65/Article/5677.Asp
加入時間 2004-3-1 12:01:49 本站網域名稱 www.code365.com
瀏覽統計 Total:237 | Year:237 | Month:89 | Day:4
介紹:

Jakarta_POI 使用Java讀寫Excel(97-2002)檔案,可以滿足大部分的需要。

因為剛好有一個項目使用到了這個工具,花了點時間順便翻譯了一下POI本身

帶的一個Guide.有一些節減和修改,希望給使用這個項目的人一些入門協助。

POI 下面有幾個自項目:HSSF用來實現Excel 的讀寫.以下是HSSF的首頁

http://jakarta.apache.org/poi/hssf/index.html

下面的介紹是基於以下地址的翻譯:

http://jakarta.apache.org/poi/hssf/quick-guide.html

目前的版本為1.51應該是很長時間之內的一個穩定版,但HSSF提供的Sample不是基於

1.51所寫,所以使用的時候需要適當的注意.

其實POI下面的幾個子項目側重不同讀寫 Word 的HDF正在開發當中.

XML下的FOP(http://xml.apache.org/fop/index.html)

可以輸出pdf檔案,也是比較好的一個工具

目錄:

建立一個workbook

建立一個sheet

建立cells

建立日期cells

設定儲存格格式

說明:

以下可能需要使用到如下的類

import org.apache.poi.hssf.usermodel.HSSFCell;

import org.apache.poi.hssf.usermodel.HSSFCellStyle;

import org.apache.poi.hssf.usermodel.HSSFDataFormat;

import org.apache.poi.hssf.usermodel.HSSFFont;

import org.apache.poi.hssf.usermodel.HSSFRow;

import org.apache.poi.hssf.usermodel.HSSFSheet;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import org.apache.poi.hssf.util.HSSFColor;

建立workbook

HSSFWorkbook wb = new HSSFWorkbook();

//使用預設的構造方法建立workbook

FileOutputStream fileOut = new FileOutputStream("workbook.xls");

//指定檔案名稱

wb.write(fileOut);

//輸出到檔案

fileOut.close();

建立一個sheet

HSSFWorkbook wb = new HSSFWorkbook();

HSSFSheet sheet1 = wb.createSheet("new sheet");

//workbook建立sheet

HSSFSheet sheet2 = wb.createSheet("second sheet");

//workbook建立另外的sheet

FileOutputStream fileOut = new FileOutputStream("workbook.xls");

wb.write(fileOut);

fileOut.close();

建立cells

HSSFWorkbook wb = new HSSFWorkbook();

HSSFSheet sheet = wb.createSheet("new sheet");

//注意以下的代碼很多方法的參數是short 而不是int 所以需要做一次類型轉換

HSSFRow row = sheet.createRow((short)0);

//sheet 建立一行

HSSFCell cell = row.createCell((short)0);

//行建立一個儲存格

cell.setCellValue(1);

//設定儲存格的值

//值的型別參數有多中double ,String ,boolean,

row.createCell((short)1).setCellValue(1.2);

row.createCell((short)2).setCellValue("This is a string");

row.createCell((short)3).setCellValue(true);

// Write the output to a file

FileOutputStream fileOut = new FileOutputStream("workbook.xls");

wb.write(fileOut);

fileOut.close();

建立日期cells

HSSFWorkbook wb = new HSSFWorkbook();

HSSFSheet sheet = wb.createSheet("new sheet");

HSSFRow row = sheet.createRow((short)0);

HSSFCell cell = row.createCell((short)0);

//設定值為日期

cell.setCellValue(new Date());

HSSFCellStyle cellStyle = wb.createCellStyle();

//指定日期顯示格式

cellStyle.setDataFormat(HSSFDataFormat.getFormat("m/d/yy h:mm"));

cell = row.createCell((short)1);

cell.setCellValue(new Date());

//設定儲存格日期顯示格式

cell.setCellStyle(cellStyle);

FileOutputStream fileOut = new FileOutputStream("workbook.xls");

wb.write(fileOut);

fileOut.close();

設定儲存格格式

儲存格格式的設定有很多形式包括儲存格的對齊,內容的字型設定,

儲存格的背景色等,因為形式比較多,只舉一些例子.以下的例子在

POI1.5中可能會有所改變具體查看API.

..........

// Aqua background

HSSFCellStyle style = wb.createCellStyle();

//建立一個樣式

style.setFillBackgroundColor(HSSFCellStyle.AQUA);

//設定此樣式的的背景顏色填充

style.setFillPattern(HSSFCellStyle.BIG_SPOTS);

//樣式的填滿類型。

//有多種式樣如:

//HSSFCellStyle.BIG_SPOTS

//HSSFCellStyle.FINE_DOTS

//HSSFCellStyle.SPARSE_DOTS等

style.setAlignment(HSSFCellStyle.ALIGN_CENTER );

//置中對齊

style.setFillBackgroundColor(HSSFColor.GREEN.index);

//設定單元個背景顏色

style.setFillForegroundColor(HSSFColor.RED.index);

//設定儲存格顯示顏色

HSSFCell cell = row.createCell((short) 1);

cell.setCellValue("X");

cell.setCellStyle(style);

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.