<%@page language="java" contentType="application/x-msdownload" import="java.io.*,java.net.*" pageEncoding="gbk"%><%
response.reset();//可以加也可以不加
response.setContentType("application/x-download");//设置为下载application/x-download
// /../../退WEB-INF/classes两级到应用的根目录下去,注意Tomcat与WebLogic下面这一句得到的路径不同,WebLogic中路径最后没有/
ServletContext context = session.getServletContext();
String realContextPath = context.getRealPath("")+"\\plan\\计划数据模板.xls";
String filenamedisplay = "计划数据模板.xls";
filenamedisplay = URLEncoder.encode(filenamedisplay,"UTF-8");
response.addHeader("Content-Disposition","attachment;filename=" + filenamedisplay);
OutputStream output = null;
FileInputStream fis = null;
try
{
output = response.getOutputStream();
fis = new FileInputStream(realContextPath);
byte[] b = new byte[1024];
int i = 0;
while((i = fis.read(b)) > 0)
{
output.write(b, 0, i);
}
output.flush();
}
catch(Exception e)
{
System.out.println("Error!");
e.printStackTrace();
}
finally
{
if(fis != null)
{
fis.close();
fis = null;
}
if(output != null)
{
output.close();
output = null;
}
}
%>
分享到:
相关推荐
4. **文件流操作**: - 使用 `FileInputStream` 和 `ServletOutputStream` 进行文件的读取和写入。 - 循环读取文件内容并写入到输出流中。 ```jsp FileInputStream input = null; ServletOutputStream output ...
### JSP文件下载实现原理与源代码解析 #### 背景介绍 在Web开发过程中,经常需要处理文件上传和下载的功能。对于Java Web开发者来说,利用JSP(JavaServer Pages)来实现文件的下载是一种常见的方式。本文将详细...
"用Jsp实现文件下载功能的几种方式" 本文将介绍用Jsp实现文件下载功能的几种方式。这些方式都可以实现文件下载的功能,但每种方式都有其特点和缺点。 方式一:直接提供文件地址 这种方式是最直接最简单的,即把...
总的来说,理解和熟练运用这些类是进行JSP文件操作的基础,它们可以帮助开发者实现各种文件交互功能,包括处理中文字符,确保数据的一致性和完整性。在实际项目中,还要考虑并发访问、权限控制、异常处理等更多因素...
在提供的"down"目录中,可能包含一个简单的JSP文件下载示例。该示例通常会包含上述步骤的实现,例如通过请求参数获取要下载的文件名,然后按照上述方法设置响应头,读取并发送文件内容。 总结,使用JSP实现文件下载...
` 用于设置文件下载时的内容处置方式,这里设置为`null`表示使用默认设置。 - **下载文件**:`su.downloadFile("/upload/暂获取的第一个文件.doc");` 指定要下载的文件路径。 #### downloadFile 方法详解 在`do_...
本文详细介绍了如何使用JSP实现文件下载功能,包括了两种不同的实现方式及其具体步骤。初学者可以通过本文快速掌握这一技术点,并在实际项目中灵活应用。此外,本文还强调了异常处理的重要性,这对于提高程序的健壮...
通过上述步骤,我们可以有效地将本地存储的图片通过文件流的方式读取并在JSP页面中展示出来。这种方法不仅适用于图片,也可以扩展应用于其他类型的文件,如PDF文档等。同时,在实际项目中还需要考虑安全性问题,比如...
第一中使用二进制流的方式,这样被文件的文件可以是随意地址,二不必使用“/”开头的路径; 第二种使用RequestDispatcher下载文件,这中下载方式的局限是被下载文件的路径必须以“/”开头,即在项目的webRoot下
这通常涉及到HTTP响应头的设置以及正确处理文件流。 1. **HTTP响应头**:为了指示浏览器以下载方式处理文件,我们需要在JSP中设置合适的HTTP响应头。关键的两个头是`Content-Disposition`和`Content-Type`。`...
在JSP中,文件上传通常使用HTTP协议的多部分/表单数据(Multipart/form-data)编码方式来实现,这是因为在普通表单提交时,浏览器会自动对表单数据进行URL编码,而文件内容无法被正确处理。 实现文件上传的步骤通常...
JSP 文件下载的几种方式 JSP 文件下载是 Web 应用程序中的一种常见需求,通常有多种方式来实现文件下载。本文将介绍三种常见的 JSP 文件下载方式,并对每种方式的优缺点进行了分析。 方式一:直接链接下载 这种...
// 获取文件流 InputStream is = ftp.retrieveFileStream(fileName); OutputStream os = response.getOutputStream(); byte[] buffer = new byte[1024]; int length; while ((length = is.read(buffer)) > 0)...
在Java服务器页面(JSP)开发中,文件的上传和下载是常见的功能需求,尤其在构建Web应用程序时。本教程将深入探讨如何在JSP环境中实现这两个操作,并以`jspSmartUpload.jar`库为例,介绍一种高效且方便的文件上传...
下面是一步步实现JSP文件下载的步骤: 1. 引入jspSmartUpload.jar:在你的项目中,需要引入这个库。通常是将jar文件放在WEB-INF/lib目录下,然后在JSP页面中通过`<jsp:useBean>`标签导入SmartUpload类。 ```jsp ...
本文将深入探讨如何利用JSP实现文件的上传和下载功能,特别是重点介绍文件下载的三种方法。 首先,我们来讨论文件的上传。在JSP中,文件上传通常涉及HTTP表单和Servlet的使用。表单需要设置`enctype="multipart/...
// 将文件流输出给客户端 FileInputStream fis = new FileInputStream(file); byte[] buffer = new byte[4096]; int bytesRead; while ((bytesRead = fis.read(buffer)) != -1) { response.getOutputStream()....
总结,使用JSP下载Word和Excel文件涉及了JSP基础、Servlet交互、HTTP响应头设置以及文件流处理等技术。掌握这些知识点,你可以构建一个功能完善的文件下载系统,为用户提供方便的文件下载服务。
下载时,Servlet读取文件内容并写入到响应流(HttpServletResponse)中,设置适当的响应头如Content-Type和Content-Disposition。 接下来是第二种方式:SmartUpload。SmartUpload是一个Java上传组件,它简化了文件...
对于图片或文本文件,JSP可以通过内联方式直接显示内容,如果是其他类型的文件,则可能需要提供下载链接。 3. **文件下载**: 文件下载需要构造一个HTTP响应,设置合适的Content-Type和Content-Disposition头,...