List<Student> list=new ArrayList<Student>();
list.add(new Student("xx", 12,"男"));
list.add(new Student("qq", 18,"男"));
list.add(new Student("aa", 20,"女"));
list.add(new Student("cc", 10,"男"));
list.add(new Student("dd", 14,"女"));
/**创建Excel对象*/
HSSFWorkbook workbook=new HSSFWorkbook();
/**建立工作表*/
HSSFSheet sheet = workbook.createSheet("new sheet");
/**提取表头数据*/
List<String> list2=list.stream().map(Student::getName).collect(Collectors.toList());
System.out.println(list2);
/**创建工作表第一行*/
HSSFRow row1 = sheet.createRow(0);
/**写入第一行表头数据*/
for(int j=0;j<list2.size();j++) {
row1.createCell(j).setCellValue(list2.get(j));
}
/**创建和写入其他行的数据*/
for(int i=0;i<list.size();i++) {
HSSFRow row = sheet.createRow(i+1);
row.createCell(0).setCellValue(list.get(i).getName());
row.createCell(1).setCellValue(list.get(i).getAge());
row.createCell(2).setCellValue(list.get(i).getSex());
}
File file=new File("C:\\Users\\Administrator\\Desktop\\workbook.xls");
FileOutputStream fileOut = null;
try {
fileOut = new FileOutputStream(file);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
workbook.write(fileOut);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}