文件下載實例

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>


發佈了30 篇原創文章 · 獲贊 5 · 訪問量 20萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章