jsp或者sevlet中,如果response的contenttype是text/html,那么就直接通過瀏覽器就可以解析內容了。
如果是application/x-excel,那么瀏覽器就不能自己解析了,就需要通過excel程序來打開,或者另存為文件了。
問題是,如果你沒有指定文件名的花,系統就會使用默認的文件名,并且沒有后綴名。
所以,為了能讓用戶下載的時候能夠自動的保存一個帶有后綴的文件,那么就需要用setHeader來指定文件名了。
具體實現如下:
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
}
請參照粗體代碼部分。
|----------------------------------------------------------------------------------------|
版權聲明 版權所有 @zhyiwww
引用請注明來源 http://m.tkk7.com/zhyiwww
|----------------------------------------------------------------------------------------|
posted on 2010-02-08 10:37
zhyiwww 閱讀(7241)
評論(0) 編輯 收藏 所屬分類:
j2ee