想要用java操作Excel文件,首先在项目中导入这两个jar包:
poi-3.10-beta2-20130904.jar
poi-excelant-3.10-beta2-20130904.jar
这里我只贴出3.10-beta版的相关包名,需要的到官网去下载吧。
接下来说说怎么将数据保存至Excel文件。
1.首先,简单说明一下Excel文件的格式,一个Excel文件可以有多张表,大家打开Excel文件可以看到下方有导航栏,就像这样,一张表有多行,每行有多个单元格,结构很清晰。
2.接下来是POI中跟Excel文件操作有关的类。
HSSFWorkbook对应Excel文件,HSSFSheet对应一张表,HSSFRow对应一行,HSSFCell对应一个单元格,创建简单的Excel文件就只用到这四个类。
3.接着创建Excel文件:
//创建workbook
workbook = new HSSFWorkbook();
//创建一张表
sheet = workbook.createSheet("表1");
HSSFRow[] rows;// 行数
HSSFCell[][] cells;// 单元格二维数组
rows = new HSSFRow[list.size()];
cells = new HSSFCell[list.size()][];
for (int i = 0; i < list.size(); i++) {
rows[i] = sheet.createRow(i);
cells[i] = new HSSFCell[list.get(i).size()];
for (int j = 0; j < list.get(i).size(); j++) {
cells[i][j] = rows[i].createCell(j);
cells[i][j].setCellValue(list.get(i).get(j));
}
}
FileOutputStream fileOut = null;
try {
fileOut = new FileOutputStream("E:/TEMP/workbook.xls");
//写入磁盘
workbook.write(fileOut);
fileOut.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}