您的位置:首页 > 其它

poi简单实现excel导出

2015-01-26 16:58 344 查看
import java.io.File;
import java.io.FileOutputStream;
import java.util.ArrayList;
import java.util.List;

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;

/**
* 创建日期:2015-1-26下午4:44:21 作者:李新广 TODO
**/
public class Test3 {
public static void testOut() {
Student user = new Student(); // 数据库表对应的实体
List<Student> list = new ArrayList<Student>();// 从数据库读出数据到集合中

// 当然上面的数据源也可以根据个人需要自己换
user.setCode("111111111");
user.setName("aa");
list.add(user);
Integer rowNumber = list.size(); // 集合里面数据的个数
// 创建Excel文件
try {
// 创建新的Excel 工作簿
HSSFWorkbook workbook = new HSSFWorkbook();
// 在Excel工作簿中建一工作表,其名为缺省值
// 如要新建一名为"效益指标"的工作表,其语句为:
// HSSFSheet sheet = workbook.createSheet("XX");

HSSFSheet sheet = workbook.createSheet();

// 定义行
HSSFRow row;

// 定义单元格
HSSFCell cell, cell1;

// 定义单元格为字符串类型
// cell.setCellType(HSSFCell.CELL_TYPE_STRING);
// 在单元格中输入一些内容语句如下:
// cell.setCellValue("内容");
// cell1.setCellValue("内容");

// 创建第一行
row = sheet.createRow(0);
// 创建单元格 ,2个单元格
cell = row.createCell(0);
cell1 = row.createCell(1);

// 给第一行的单元格赋值
cell.setCellValue("名字");
cell1.setCellValue("号码");

// 循环给每行及每个单元格赋值
for (int i = 1; i <= rowNumber; i++) {
row = sheet.createRow(i);
cell = row.createCell(0);
cell1 = row.createCell(1);

cell.setCellValue(list.get(i - 1).getName());
cell1.setCellValue(list.get(i - 1).getCode());
}

// 检查当前要导出的excel文件是否存在 ,存在就删除。
File file = new File("d:\\test.xls");
if (file.exists()) {
file.delete();
}

// 新建一输出文件流
FileOutputStream fOut = new FileOutputStream("d:\\test.xls");

// 把相应的Excel 工作簿
workbook.write(fOut);

fOut.flush();
// 操作结束,关闭文件
fOut.close();

} catch (Exception e) {
System.out.println("Exception:" + e);
}

}
public static void main(String[] args) {
testOut();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: