HttpServletResponse response = ServletActionContext.getResponse();
InputStream inputStream = null;
OutputStream outputStream = null;
msg = "文件下載成功";
try {
response.setContentType("application/x-msdownload;charset=UTF-8");
response.setHeader("Content-Disposition","attachment;filename=" + java.net.URLEncoder.encode("aa.ini", "UTF-8"));
inputStream = dataInfo.getFileContent().getBinaryStream();
outputStream = new BufferedOutputStream(response.getOutputStream());
byte[] buf = new byte[1];
int len = 0;
try {
while((len = inputStream.read(buf)) != -1) {
outputStream.write(buf, 0, len);
outputStream.flush();
}
} catch (IOException e) {
e.printStackTrace();
msg = "文件寫入時出錯!";
}
} catch (SQLException e) {
e.printStackTrace();
msg = "讀取Blob文件時出錯";
} catch (IOException e1) {
e1.printStackTrace();
}finally{
try {
inputStream.close();
} catch (IOException e) {
msg = "關閉流時出錯";
e.printStackTrace();
}
try {
outputStream.close();
} catch (IOException e) {
msg = "關閉流時出錯";
e.printStackTrace();
}
} //end try
前臺代碼:
<a href='${pageContext.request.contextPath}/stationLocationAction!downLoadFile.action'>下載</a>