第一步、设置excel模板路径(setSrcPath)
第二步、设置要生成excel文件路径(setDesPath)
第三步、设置模板中哪个Sheet列(setSheetName)
第四步、获取所读取excel模板的对象(getSheet)
第五步、设置数据(分为6种类型数据:setCellStrValue、setCellDateValue、 setCellDoubleValue、setCellBoolValue、setCellCalendarValue、setCellRichTextStrValue)
第六步、完成导出 (exportToNewFile)
举个例子吧public class CreateSimpleExcelToDisk
{
/**
* @功能:手工构建一个简单格式的Excel
*/
public static List<Tsxx>getStudent(String[] str) throws Exception
{
List listts = new ArrayList()
SimpleDateFormat df = new SimpleDateFormat("yyyy-mm-dd")
Connection conn = DBUtil.getCon()
String sqlback=""
for(int i=0i<str.length-1i++){
sqlback=sqlback+"\"id\"='"+str[i]+"'or"
}
sqlback=sqlback+"\"id\"='"+str[str.length-1]+"'"
String sql1 = "select * from 表名 where"+sqlback
System.out.println(sql1 )
ResultSet rs = DBUtil.getResult(conn, sql1)
String outStr = ""
int a=1
try {
while(rs.next()){
String objid = rs.getString(1)
String tsname= rs.getString("tsname")
String tstel= rs.getString("tstel")
String tscpname= rs.getString("tscpname")
String tsads=rs.getString("tsads")
String tsqus=rs.getString("tsqus")
String tsno=rs.getString("tsno")
String tsdate=rs.getString("tsdate")
Tsxx user = new Tsxx(a,tsname,tstel,tscpname,tsads,tsqus,tsno,df.parse(tsdate))
listts.add(user)
a++
}
} catch (SQLException e) {
e.printStackTrace()
}finally {
try {
if (rs != null) {
rs.close()
}
if (conn != null) {
conn.close()
}
} catch (Exception e) {
}}
return listts
}
public static void main(String[] args) throws Exception
{
// // 第一步,创建一个webbook,对应一个Excel文件
// HSSFWorkbook wb = new HSSFWorkbook()
// // 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
// HSSFSheet sheet = wb.createSheet("学生表一")
// // 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
// HSSFRow row = sheet.createRow((int) 0)
// // 第四步,创建单元格,并设置值表头 设置表头居中
// HSSFCellStyle style = wb.createCellStyle()
// style.setAlignment(HSSFCellStyle.ALIGN_CENTER)// 创建一个居中格式
//
// HSSFCell cell = row.createCell((short) 0)
// cell.setCellValue("学号")
// cell.setCellStyle(style)
// cell = row.createCell((short) 1)
// cell.setCellValue("姓名")
// cell.setCellStyle(style)
// cell = row.createCell((short) 2)
// cell.setCellValue("年龄")
// cell.setCellStyle(style)
// cell = row.createCell((short) 3)
// cell.setCellValue("生日")
// cell.setCellStyle(style)
//
// // 第五步,写入实体数据 实际应用中这些数据从数据库得到,
// List list = CreateSimpleExcelToDisk.getStudent()
//
// for (int i = 0i <list.size()i++)
// {
// row = sheet.createRow((int) i + 1)
// Tsxx stu = (Tsxx) list.get(i)
// // 第四步,创建单元格,并设置值
// row.createCell((short) 0).setCellValue((double) stu.getId())
// row.createCell((short) 1).setCellValue(stu.getName())
// row.createCell((short) 2).setCellValue((double) stu.getAge())
// cell = row.createCell((short) 3)
// cell.setCellValue(new SimpleDateFormat("yyyy-mm-dd").format(stu.getBirth()))
// }
// // 第六步,将文件存到指定位置
// try
// {
// FileOutputStream fout = new FileOutputStream("E:/students.xls")
// wb.write(fout)
// fout.close()
// }
// catch (Exception e)
// {
// e.printStackTrace()
// }
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)