- 随着对Java了解的深入,发现他的魅力不止一处,从不介入变成语言的争论,愿作一个忠诚的Javaer~~
- 今天给大家分享一篇关于Java操作Excel的文章,首先上来要感谢一下Apache基金会,他为我们扩展了很多基础的JDK功能,使一些经常在日常编程中能用到的功能变得简单。
- 下面介绍的是Apache下的一个开源项目Apache POI,它提供API给Java程序对Microsoft Office格式档案读和写的功能。感兴趣的童鞋可以去百度或者Apache扩展其他知识:百度:http://baike.baidu.com/view/3029809.htm Apache:http://poi.apache.org/
- 首先我们需要从Apache网站上获取相应的Jar包,我们今天只操作excel,所以需要三个jar包:commons-logging.jar, log4j.jar, poi.jar。
- 接下来当然是导入jar包啦~
- 在POI的API中,操作excel的都是以HSSF开头的。有下面几个:
- HSSFWorkbook 用来操作工作簿对象
- HSSFSheet 用来操作工作表对象
- HSSFRow 用来操作行对象
- HSSFCell 用来操作单元格对象
- 第四步就开始我们代码的编写,简单的代码功能如下:
- import java.io.File;
- import java.io.FileNotFoundException;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import org.apache.poi.hssf.usermodel.HSSFCell;
- import org.apache.poi.hssf.usermodel.HSSFRow;
- import org.apache.poi.hssf.usermodel.HSSFSheet;
- import org.apache.poi.hssf.usermodel.HSSFWorkbook;
- public class ExcelTest {
- public static void main(String[] args) throws IOException, FileNotFoundException {
- //生成一个工作簿
- HSSFWorkbook hwb = new HSSFWorkbook();
- //在当前工作簿里,生成一个工作表
- HSSFSheet sheet = hwb.createSheet();
- for(int i=0;i<6;i++){
- //在当前工作表里,生成一行
- HSSFRow row = sheet.createRow(i);
- for(int j=0;j<6;j++){
- //在当前生成的行里,生成一个单元格
- HSSFCell cell = row.createCell(i);
- //设置单元格里面的值
- cell.setCellValue(i);
- }
- }
- //调用工作簿的write方法,将工作簿输出到D盘,名字为a.xls。这里write的参数需要是一个输出流。
- hwb.write(new FileOutputStream(new File("d:/a.xls")));
- }
- }
- //该片段来自于http://www.codesnippet.cn/detail/250420149357.html
来源: http://www.codesnippet.cn/detail/250420149357.html