`
张小宇
  • 浏览: 35357 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

下载文件

阅读更多
/* 把下面所有贴到一个jsp页面,使点击“下载”的按钮连接到这个页面,传入文件名 */‍

<%@ page contentType="text/html;charset=GB2312"   %>   

    
<P>点击超链接下载Zip文件</P>   
      
<%@   page   contentType="text/html;charset=GB2312"   %>   
<%@   page   import="java.io.*"   %>   
<html>
<BODY> 
<% 
   OutputStream   outps = null;
    FileInputStream   inputs =null;
    PrintWriter printwt;
        try{
        String filePath = request.getParameter("filePath");
         outps=response.getOutputStream();   
         //输出文件用的字节数组,每次发送1024个字节到输出流:   
         byte   bt[]=new   byte[1024];   
         //下载的文件:   
         File   fileLoad=new   File(filePath);   
         //客户使用保存文件的对话框:   
         response.setHeader("Content-disposition","attachment;filename="+filePath);     
         //通知用户文件的MIME类型:   
         response.setContentType("application/txt");   
         //通知文件的长度:   
         long   fileLength=fileLoad.length();   
         String   length=String.valueOf(fileLength);   
         response.setHeader("Content_Length",length);   
         //读取文件*.zip,并发送给客户下载:   
         inputs=new   FileInputStream(fileLoad);   
         int len=0;   
         while((len=inputs.read(bt))!=-1){   
         outps.write(bt,0,len);   
         }
        }catch(Exception e){
        response.sendRedirect("downLoadError.jsp");
     }finally{   
         //关闭流
         if(inputs!=null) inputs.close();
         if(outps!=null) outps.close();
         out.clear();
         out = pageContext.pushBody();
     }
%>   
</Body>   
</HTML>

/* 下面是异常的 ‍downLoadError.jsp*/

‍<%@ page contentType="text/html; charset=GBK" %>
<%@ taglib uri="http://eaptag2.suntek.com" prefix="ccf"%>
<%
String path = request.getContextPath();
%>
<html>
<head>
     <title>操作日志查询</title>         
     <meta http-equiv="Content-Type" content="text/html; charset=GBK" />
</head>

<script type="text/javascript" src="/eaptag2/js/ccftag.zdialog.js" ></script>
<script type="text/javascript" src="/eaptag2/js/ccftag.form.js"></script>
<script type="text/javascript" src="/eaptag2/js/ccftag.datepick.js"></script>
<script type="text/javascript" src="/eaptag2/js/ccftag.textbox.js"></script>

<script>

</script>
<body scroll=no>
<table align="center">
<tr><td>&nbsp;</td></tr>
<tr><td><font color="red">对不起,在指定目录下找不到下载文件,无法下载!</font></td>
</tr><tr>
   <td align = "center"><input type="button" size="30" value="返回" onclick="history.back();"></td>
</tr>
</table>

</body>
</html>

实例: 下载工程中的 META-INF下的corp_template.txt 到本地指定位置。

下载按钮 的链接 连到下边的页面 传入corp_template.txt (文件名称) 异常信息跟上边的异常页面相同

‍<%@ page contentType="text/html;charset=GB2312"   %>    
<%@page import="java.io.*" %>
    
<P>点击超链接下载Zip文件</P>   
      
<%@   page   contentType="text/html;charset=GB2312"   %>   
<%@   page   import="java.io.*"   %>   
<html>
<BODY> 
<% 
   OutputStream   outps = null;
    InputStream   inputs =null;
    PrintWriter printwt;
        try{
        String filename = request.getParameter("filename");
         outps=response.getOutputStream();   
         //输出文件用的字节数组,每次发送1024个字节到输出流:   
         byte   bt[]=new   byte[1024];   
         //下载的文件:   
         inputs = getClass().getResourceAsStream("/META-INF/"+ filename ); 
         //客户使用保存文件的对话框:   
         response.setHeader("Content-disposition","attachment;filename=" + filename);     
         //通知用户文件的MIME类型:   
         response.setContentType("application/txt");       
         //读取文件*.zip,并发送给客户下载:     
         int len=0;   
         while((len=inputs.read(bt))!=-1){   
         outps.write(bt,0,len);   
         }
        }catch(Exception e){
        response.sendRedirect("downLoadError.jsp");
     }finally{   
         //关闭流
         if(inputs!=null) inputs.close();
         if(outps!=null) outps.close();
         out.clear();
         out = pageContext.pushBody();
     }
%>   
</Body>   
</HTML> 
分享到:
评论

相关推荐

    ajax实现java文件下载

    为了克服这一问题,开发人员通常会利用Ajax技术来实现异步文件下载,使得用户在下载文件的同时仍能保持页面的正常操作。本话题将详细探讨如何通过Ajax实现Java文件的下载,并介绍相关的核心概念和技术。 1. **Ajax*...

    libcurl下载文件并显示进度

    在本场景中,我们关注的是如何使用libcurl通过HTTP协议下载文件并实时显示下载进度。下面将详细介绍这个过程。 首先,我们需要理解libcurl的基本用法。libcurl提供了一系列的API函数,用于初始化、设置选项、执行...

    利用chromedriver下载文件,并进行重命名

    利用chromedriver下载网络文件,下载的文件名下载时不可修改,通过查找最新文件,并对其改名、移动位置达到重命名的功能。

    VB使用URLDownloadToFile下载文件实例

    在VB(Visual Basic)编程中,`URLDownloadToFile`是一个非常实用的API函数,它允许开发者从指定的URL下载文件到本地系统。这个函数属于Windows操作系统内置的`Wininet.dll`库,它提供了网络访问的功能,包括HTTP、...

    Android 下载文件Demo

    在Android开发中,下载文件是一项常见的任务,尤其在构建应用时需要从服务器获取资源或更新数据。本"Android 下载文件Demo"旨在演示如何利用字节流进行文件下载操作。在Java和Android中,输入输出流(IO流)是处理...

    JSP下载文件源代码

    - **下载文件**:`su.downloadFile("/upload/暂获取的第一个文件.doc");` 指定要下载的文件路径。 #### downloadFile 方法详解 在`do_download.jsp`中调用的`downloadFile`方法是从SmartUpload的Java类中提取出来的...

    浏览器无法下载文档

    - 文件权限:检查下载文件的保存位置,确保当前用户有写入权限。 6. **操作步骤**: - 根据提供的“一二三四五”操作,可能包括清理浏览器缓存、重启路由器、更新浏览器至最新版本等。这些步骤可以帮助排除一些...

    WebService上传下载文件

    用webservice作为服务器端,以流的方式实现文件的上传和下载,可以自动调用winrar进行压缩和加密,支持多线程和断点续传功能,默认是16K一个包,全部源码,已经在实际项目中应用。客户端有winform和服务两种方式的...

    文件下载的代码

    ASP.NET中提供可以在页面下载存储在后台的文件,很好用哦

    Delphi阿里云对象存储 OSS【支持上传文件、下载文件、删除文件、创建目录、删除目录、Bucket操作等】

    【delphi阿里云对象存储OSS】支持 获取Bucket列表、设置Bucket权限)、创建Bucket、删除Bucket、获取文件列表、上传文件、下载文件、删除文件、读取文件、判断文件是否存在、创建目录、删除目录等功能。api接口文档...

    fish免费下载文档工具

    内容识别算法则可能通过分析网页内容,如文件扩展名、文件类型描述或者特定的标识符来判断文档的类型,确保能够准确地定位到需要下载的文件。 Fish工具的使用流程可能如下: 1. 用户打开Fish应用或访问其网页版。 ...

    Wpf下载网络文件到本地指定路径(简单示例)

    在本文中,我们将深入探讨如何在WPF应用中实现从网络下载文件并将其保存到本地指定路径。这个过程涉及到多个关键知识点,包括网络请求、文件流处理和UI更新。我们将结合给定的标题和描述来详细阐述这些概念。 首先...

    pb实现http文件下载功能--源代码 可以直接使用

    8. **安全性考虑**:在实现HTTP文件下载时,还需关注安全问题,如使用HTTPS确保传输过程的安全,验证下载文件的完整性(例如通过校验和或数字签名)等。 9. **性能优化**:为了提高下载速度和用户体验,可能需要...

    Fish文库文档下载工具

    "Fish文库文档下载工具"的核心功能在于其对多种文档网站的兼容性,能够突破常规的在线预览限制,将文档转化为可本地存储的PDF文件。这样,用户就可以随时随地查阅,无需依赖网络连接,极大地提高了学习和工作的效率...

    处理下载文件时中文乱码

    我们在项目中在下载文件会出现中文乱码,这个文档可以很好的解决乱码问题

    ASP.NET仿百度网盘文件分享文件管理系统源码 会员上传下载文件 带搭建教程

    下载:单击列表中的文件即可下载文件 分享:用户分享文件链接会生成提取码,其它用户进入该链接需输入提取码比对,正确的进入下载,错误的提取码不允许下载 会员分为普通会员与VIP超级会员。会员通过VIP激活码可以...

    文档批量搜索下载工具

    文档批量搜索下载工具主要针对OFFICE文档(包括Word、Excel、PowerPoint)和PDF格式文件的下载需求。用户通过这个工具可以快速定位并下载所需文档,极大地提高了文档处理的效率,尤其是对于那些频繁需要更新资料和...

    在线文档下载器

    在线文档下载器可能使用此库来解析和处理从网站下载的PDF文件,确保用户可以本地存储和阅读这些文档。 “iDocDown.exe”是主程序执行文件,是在线文档下载器的核心部分。它包含了实现下载功能的算法和逻辑,能够...

    http下载和上传文件 c++ 封装类

    4. **下载功能**:下载文件时,类会发送一个GET请求到指定URL,然后接收服务器返回的数据流。为了高效,可能需要支持断点续传,即记录已下载的部分并在下次继续下载。 5. **错误处理**:良好的封装类会提供详细的...

    豆丁网文档下载工具

    3. 文件格式:下载的文档可能与原文档格式不同,例如,原本是PDF的文档可能会被转换成其他格式,这可能导致文档格式混乱或部分内容丢失。因此,下载后需要检查文档的完整性和阅读效果。 4. 效率与稳定性:虽然...

Global site tag (gtag.js) - Google Analytics