我已经实现了把 数据库 表 中的数据倒成“exl”格式,但是只能倒到服务器上,我想倒到客户端但不知道应该如何做!!!!请大家帮助~!!!!
以下是部分代码(只能倒到服务器上)(请大家告诉我如何倒到 客户端)
path=request.getParameter("beginpath");//要倒出的路径
list=sqEvent.getListPopeByDate();//表中的数据查出来放在list中
L_length=list.size();
if (L_length!=0){
out.print("开始导出.....(该导出文件在["+path+"])");
try{
//构建Workbook对象, 只读Workbook对象
//Method 1:创建可写入的Excel工作薄
String targetfile=path;
jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File(targetfile));
//创建Excel工作表
jxl.write.WritableSheet ws = wwb.createSheet("社区矫正数据", 0);
//1.添加Label对
jxl.write.Label labelC=null;
jxl.write.DateTime datetimeD=null;
//格式化日期
jxl.write.DateFormat formatdDT=new jxl.write.DateFormat("yyyy-m-d");
jxl.write.WritableCellFormat wcfd = new jxl.write.WritableCellFormat(formatdDT);
// SqPeople sq=null;
for (int j=0;j<=L_length;j++){
SqPeople sq=(SqPeople)list.get((j>0?j-1:0));
out.print("<br>");
for (int i=0;i<xlsarray.length;i++){
if (j==0){
labelC = new jxl.write.Label(i,j,xlsarray[i]);
ws.addCell(labelC);
}else{
datetimeD=null;
switch (i) {
case 0 :
labelC=new jxl.write.Label(i,j,sq.getName());
out.print(sq.getName());
ws.addCell(labelC);
break;
case 1 :
labelC=new jxl.write.Label(i,j,sq.getSex());
out.print(sq.getSex());
ws.addCell(labelC);
break;
case 2 :
if (sq.getBirthday()!=null){
datetimeD=new jxl.write.DateTime(i,j,sq.getBirthday(),wcfd);
out.print(formatter.format(sq.getBirthday()));
ws.addCell(datetimeD);
}
break;
case 3 :
labelC=new jxl.write.Label(i,j,sq.getAge());
out.print(sq.getAge());
ws.addCell(labelC);
break;
case 4 :
labelC=new jxl.write.Label(i,j,sq.getOrgan());
out.print(sq.getOrgan());
ws.addCell(labelC);
break;
case 5 :
labelC=new jxl.write.Label(i,j,sq.getAccusal());
out.print(sq.getAccusal());
ws.addCell(labelC);
break;
case 6 :
labelC=new jxl.write.Label(i,j,sq.getType());
out.print(sq.getType());
ws.addCell(labelC);
break;
case 7 :
if (sq.getBegindate()!=null){
datetimeD=new jxl.write.DateTime(i,j,sq.getBegindate(),wcfd);
out.print(formatter.format(sq.getBegindate()));
ws.addCell(datetimeD);
}
break;
case 8 :
if (sq.getEnddate()!=null){
datetimeD=new jxl.write.DateTime(i,j,sq.getEnddate(),wcfd);
out.print(formatter.format(sq.getEnddate()));
ws.addCell(datetimeD);
}
break;
case 9 :
labelC=new jxl.write.Label(i,j,sq.getJuddept().getJud_street());
out.print(sq.getPopedom());
ws.addCell(labelC);
break;
case 10 :
labelC=new jxl.write.Label(i,j,sq.getUnchain());
out.print(sq.getUnchain());
ws.addCell(labelC);
break;
case 11 :
labelC=new jxl.write.Label(i,j,sq.getDistinction());
out.print(sq.getDistinction());
break;
case 12 :
labelC=new jxl.write.Label(i,j,sq.getJuddept().getId().toString());
out.print(sq.getDistinction());
ws.addCell(labelC);
break;
case 13 :
if (sq.getRealdate()!=null){
datetimeD=new jxl.write.DateTime(i,j,sq.getRealdate(),wcfd);
out.print(sq.getDistinction());
ws.addCell(datetimeD);
}
break;
}
}
}
}
//写入Exel工作表
wwb.write();
//关闭Excel工作薄对象
wwb.close();
}
catch (Exception e){
e.printStackTrace();
}
out.print("<br>......导出完成!");
}else {
out.print("该日期段没有数据!");
return;
}
}
以下是部分代码(只能倒到服务器上)(请大家告诉我如何倒到 客户端)
path=request.getParameter("beginpath");//要倒出的路径
list=sqEvent.getListPopeByDate();//表中的数据查出来放在list中
L_length=list.size();
if (L_length!=0){
out.print("开始导出.....(该导出文件在["+path+"])");
try{
//构建Workbook对象, 只读Workbook对象
//Method 1:创建可写入的Excel工作薄
String targetfile=path;
jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File(targetfile));
//创建Excel工作表
jxl.write.WritableSheet ws = wwb.createSheet("社区矫正数据", 0);
//1.添加Label对
jxl.write.Label labelC=null;
jxl.write.DateTime datetimeD=null;
//格式化日期
jxl.write.DateFormat formatdDT=new jxl.write.DateFormat("yyyy-m-d");
jxl.write.WritableCellFormat wcfd = new jxl.write.WritableCellFormat(formatdDT);
// SqPeople sq=null;
for (int j=0;j<=L_length;j++){
SqPeople sq=(SqPeople)list.get((j>0?j-1:0));
out.print("<br>");
for (int i=0;i<xlsarray.length;i++){
if (j==0){
labelC = new jxl.write.Label(i,j,xlsarray[i]);
ws.addCell(labelC);
}else{
datetimeD=null;
switch (i) {
case 0 :
labelC=new jxl.write.Label(i,j,sq.getName());
out.print(sq.getName());
ws.addCell(labelC);
break;
case 1 :
labelC=new jxl.write.Label(i,j,sq.getSex());
out.print(sq.getSex());
ws.addCell(labelC);
break;
case 2 :
if (sq.getBirthday()!=null){
datetimeD=new jxl.write.DateTime(i,j,sq.getBirthday(),wcfd);
out.print(formatter.format(sq.getBirthday()));
ws.addCell(datetimeD);
}
break;
case 3 :
labelC=new jxl.write.Label(i,j,sq.getAge());
out.print(sq.getAge());
ws.addCell(labelC);
break;
case 4 :
labelC=new jxl.write.Label(i,j,sq.getOrgan());
out.print(sq.getOrgan());
ws.addCell(labelC);
break;
case 5 :
labelC=new jxl.write.Label(i,j,sq.getAccusal());
out.print(sq.getAccusal());
ws.addCell(labelC);
break;
case 6 :
labelC=new jxl.write.Label(i,j,sq.getType());
out.print(sq.getType());
ws.addCell(labelC);
break;
case 7 :
if (sq.getBegindate()!=null){
datetimeD=new jxl.write.DateTime(i,j,sq.getBegindate(),wcfd);
out.print(formatter.format(sq.getBegindate()));
ws.addCell(datetimeD);
}
break;
case 8 :
if (sq.getEnddate()!=null){
datetimeD=new jxl.write.DateTime(i,j,sq.getEnddate(),wcfd);
out.print(formatter.format(sq.getEnddate()));
ws.addCell(datetimeD);
}
break;
case 9 :
labelC=new jxl.write.Label(i,j,sq.getJuddept().getJud_street());
out.print(sq.getPopedom());
ws.addCell(labelC);
break;
case 10 :
labelC=new jxl.write.Label(i,j,sq.getUnchain());
out.print(sq.getUnchain());
ws.addCell(labelC);
break;
case 11 :
labelC=new jxl.write.Label(i,j,sq.getDistinction());
out.print(sq.getDistinction());
break;
case 12 :
labelC=new jxl.write.Label(i,j,sq.getJuddept().getId().toString());
out.print(sq.getDistinction());
ws.addCell(labelC);
break;
case 13 :
if (sq.getRealdate()!=null){
datetimeD=new jxl.write.DateTime(i,j,sq.getRealdate(),wcfd);
out.print(sq.getDistinction());
ws.addCell(datetimeD);
}
break;
}
}
}
}
//写入Exel工作表
wwb.write();
//关闭Excel工作薄对象
wwb.close();
}
catch (Exception e){
e.printStackTrace();
}
out.print("<br>......导出完成!");
}else {
out.print("该日期段没有数据!");
return;
}
}
或者图简单,直接用超链接下载
用winrar打开,解压后修改修改.应该能用.
已经封装过的.看你用的着吗?
http://211.144.32.234:8080/WebAppraise/ZongStatistic/20020001000032P6.XLS