java处理Excel(POI包)
Jakarta POI 是一套用于訪問微軟格式文檔的Java API。
Jakarta POI有很多組件組成,其中有用于操作Excel格式文件的HSSF和用于早在Word的HWPF,在各種組件中目前只有用于操作Excel的HSSF相對成熟。它的官方首頁是:http://jakarta.apache.org/poi/hssf/index.html,這里可以下載到它的最新版本和文檔。
下面就來看看如何通過Jakarta POI的HSSF操作Excel文件。
操作Excel文件的步驟同JXL類似(關于如何用JXL操作Excel可以看我的另外兩篇文章)。
HSSF對Excel的操作主要是通過下面幾個對象實現:
HSSFWorkbook??? 工作簿對象對應于Excel文件
HSSFSheet?????? Sheet對象對應于Excel中的Sheet
HSSFRow???????? 行對象表示Sheet中的一行(這個對象在JXL中并沒有提供)
HSSFCell??????? 單元格對象
操作步驟就是用HSSFWorkbook打開或者創建“Excel文件對象”,用HSSFWorkbook對象返回或者創建Sheet對象,用Sheet對象返回行對象,用行對象得到Cell對象,有了Cell對象就隨你讀寫了。下面來看一個動態生成Excel文件的例子:
//創建HSSFWorkbook對象
HSSFWorkbook wb = new HSSFWorkbook();
//創建HSSFSheet對象
HSSFSheet sheet = wb.createSheet("sheet0");
//創建HSSFRow對象
HSSFRow row = sheet.createRow((short)0);
//創建HSSFCell對象
HSSFCell cell=row.createCell((short)0);
//用來處理中文問題
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
//設置單元格的值
cell.setCellValue("單元格中的中文");
//定義你需要的輸出流
OutputStream out = new FileOutputStream("viwo.xls");
//輸出Excel
wb.write(out);
out.flush();
HSSF讀取文件同樣還是使用這幾個對象,只是把相應的createXXX方法變成了getXXX方法即可。
只要理解了其中原理,不管是讀還是寫亦或是特定格式都可以輕松實現,正所謂知其然更要知其所以然。
最后附上HSSF官方的QuickGuide:《Busy Developers' Guide to HSSF Features》,雖然是英文的但還是很容易理解的。
http://jakarta.apache.org/poi/hssf/quick-guide.html?
總結
以上是生活随笔為你收集整理的java处理Excel(POI包)的全部內容,希望文章能夠幫你解決所遇到的問題。