jsp或者sevlet中,如果response的contenttype是text/html,那么就直接通過(guò)瀏覽器就可以解析內(nèi)容了。
如果是application/x-excel,那么瀏覽器就不能自己解析了,就需要通過(guò)excel程序來(lái)打開(kāi),或者另存為文件了。
問(wèn)題是,如果你沒(méi)有指定文件名的花,系統(tǒng)就會(huì)使用默認(rèn)的文件名,并且沒(méi)有后綴名。
所以,為了能讓用戶(hù)下載的時(shí)候能夠自動(dòng)的保存一個(gè)帶有后綴的文件,那么就需要用setHeader來(lái)指定文件名了。
具體實(shí)現(xiàn)如下:
response.setContentType("application/x-excel");
// response.setContentType("application/vnd.ms-excel");
OutputStream out = response.getOutputStream();
ExcelBussiness eb = new ExcelBussiness();
try {
response.setHeader("Content-Disposition", "attachment; filename="+"xxx.xls");
eb.responseExcel(out);
} catch (RowsExceededException e) {
// export excel exception
e.printStackTrace();
} catch (WriteException e) {
// export excel exceptin
}
請(qǐng)參照粗體代碼部分。
|----------------------------------------------------------------------------------------|
版權(quán)聲明 版權(quán)所有 @zhyiwww
引用請(qǐng)注明來(lái)源 http://m.tkk7.com/zhyiwww
|----------------------------------------------------------------------------------------|
posted on 2010-02-08 10:37
zhyiwww 閱讀(7241)
評(píng)論(0) 編輯 收藏 所屬分類(lèi):
j2ee