POI所涉及jar包:
poi-3.9.jar:处理office2003及以下版本
poi-ooxml-3.9.jar,poi-ooxml-schemas-3.9.jar:处理office2007及以上版本
下面分别举例:
例1:以Excel为例,处理2003及以下版本
<span style="white-space:pre"> </span>public void testPoi() throws Exception {
// 1、创建一个工作簿
Workbook wb = new HSSFWorkbook();
//2、创建一个工作表
Sheet sheet = wb.createSheet();
// 3、创建一个行对象
Row nRow = sheet.createRow(7); //第八行
// 4、创建一个单元格对象,指定它的列
Cell nCell = nRow.createCell(4); //第五列
//5、给单元格设置内容
nCell.setCellValue("哈喽,你好!");
OutputStream os = new FileOutputStream("c:\\testpoi.xls"); //excel 2003
//6、保存,写文件
wb.write(os);
//7、关闭对象
os.flush();
os.close();
}
例2:还是Excel为例,处理2007及以上版本
private void testPoi2007() throws Exception{
String xlsFile = "c:/clroleprice.xlsx";
//STEP 1:打开excel文件
Workbook wb = new XSSFWorkbook(); //创建excel文件
//Workbook wb = new XSSFWorkbook(new FileInputStream(xlsFile)); //打开已存在的excel文件
//STEP 2:打开当前工作簿
Sheet sheet = wb.createSheet("我的第一个工作簿"); //建立新的sheet对象
//Sheet sheet = wb.getSheetAt(0); //选择第一个工作簿
//wb.setSheetName(0, "我的第一个工作簿"); //设置工作簿的名称
Row nRow = null;
Cell nCell = null;
//STEP 3:创建行对象
nRow = sheet.createRow((short)1); //第2行
//STEP 4:指定列 创建单元格对象
nCell = nRow.createCell((short)(2)); //第3列
//STEP 5:指定列 创建单元格对象
nCell.setCellValue("我是单元格传智播客");
//STEP 7:关闭保存excel文件
FileOutputStream fOut = new FileOutputStream(xlsFile);
wb.write(fOut);
fOut.flush();
fOut.close();
}
当导入Excel中大量的数据时,使用SXSSFWorkbook类。