Java 利用poi 导出excel表格 如何在导出时自由选择路径? 10

能导出成功,知识代码把路径写死了,想要实现自己选择保存路径。... 能导出成功,知识代码把路径写死了,想要实现自己选择保存路径。 展开
 我来答
思念是一种醉过
高粉答主

2018-03-31 · 每个回答都超有意思的
知道大有可为答主
回答量:224
采纳率:100%
帮助的人:4.2万
展开全部

导出时自由选择路径的代码如下:

1、后台输出Excel文件代码:


OutputStream output = response.getOutputStream();


response.reset();


response.setHeader("Content-disposition", "attachment; filename=" + path);


response.setContentType("Content-Type:application/vnd.ms-excel ");


wb.write(output);


output.close();

2、前端代码:

window.open("getExcelList","_blank");

导出excel数据

* @param id

* @param m

* @return

*/

@RequestMapping("/exportExcel")

public void exportExcel(@RequestParam("id") Integer id, Model m,HttpServletRequest req, HttpServletResponse resp) {

try {

ExportExcel<P2pLoanPlanVo> ex = new ExportExcel<P2pLoanPlanVo>();

String[] headers = {"最迟还款日", "还款金额","剩余几天","逾期几天", "罚息","是否垫付","状态","是否发放收益"};

List<P2pLoanPlanVo> dataset = new ArrayList<P2pLoanPlanVo>();

List<P2pLoanPlan> plans = this.planService.getListByLoan(id);

for (int i = 0; i < plans.size(); i++) {

P2pLoanPlanVo p2pLoanPlanVo = new P2pLoanPlanVo();

p2pLoanPlanVo.setRepayDate(plans.get(i).getRepayDate());

p2pLoanPlanVo.setRepayAmount(plans.get(i).getRepayAmount());

if(plans.get(i).getRepayDays() >= 0 && plans.get(i).getStatus() == 0){

p2pLoanPlanVo.setRepayDays(plans.get(i).getRepayDays());

}else{

p2pLoanPlanVo.setRepayDays(0);

}

if(plans.get(i).getRepayDays() < 0 && plans.get(i).getStatus() == 0){

p2pLoanPlanVo.setRepayYqDays(-plans.get(i).getRepayDays());

}else{

p2pLoanPlanVo.setRepayYqDays(0);

}

蓝者一号
2017-05-10 · TA获得超过121个赞
知道小有建树答主
回答量:245
采纳率:0%
帮助的人:106万
展开全部
主要代码如下:
后台输出Excel文件代码:
OutputStream output = response.getOutputStream();
response.reset();
response.setHeader("Content-disposition", "attachment; filename=" + path);
response.setContentType("Content-Type:application/vnd.ms-excel ");
wb.write(output);
output.close();
前端代码:window.open("getExcelList","_blank");
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
29cyy
2014-12-01 · TA获得超过2186个赞
知道小有建树答主
回答量:2826
采纳率:45%
帮助的人:578万
展开全部
做个临时文件,在重定向到这个临时文件,浏览器就会选择下载
追问
我不明白,没学这个多久,望耐心解释~十分感谢~
追答

在servlet中,

//把上边的改成
try{
    wb.write(response.getOutputStream());
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
weiCoCo
2018-04-12
知道答主
回答量:2
采纳率:0%
帮助的人:1286
展开全部
可以用pageoffice导出excel. pageoffice 调用的是本地的office,导出excel可以弹出另存的对话框,用户可以选择自己想要的位置进行保存.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式