`
newleague
  • 浏览: 1513761 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

下载文件

F# 
阅读更多

public ActionForward fileDownload(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response){
  String inUrl = request.getParameter("url");
  
  String uploadRootUrl = getUploadRootUrl();
  
  String url = uploadRootUrl + inUrl;
  
  String flName = inUrl.substring(inUrl.indexOf(".")+1);
  
  BufferedInputStream fin = null;
  ServletOutputStream fout = null;
  try {
   File f = new File(url);
   fin = new BufferedInputStream(new FileInputStream(f));
   fout = response.getOutputStream();
   
   response.setContentType("application/" + flName);
   response.setHeader("content-disposition", "attachment; filename=down." + flName);
   response.setContentLength((int) f.length());

   log.error("user download from Datums,the file name is [" +
   inUrl.substring(inUrl.lastIndexOf(File.separator) + 1) + "]");

   int length = (int) f.length();

   if (length != 0) {
    byte[] b = new byte[2048];
    while (fin != null && (length = fin.read(b)) != -1) {
     fout.write(b, 0, length);
    }
   }
   
  } catch (FileNotFoundException e) {
       log.info("no found file");
   return mapping.findForward("noFile");
  } catch (IOException e) {
   e.printStackTrace();
  } finally {
   try {
    if (fin != null) {
     fin.close();
    }
    if (fout != null) {
     fout.close();
    }
   } catch (IOException e) {
    e.printStackTrace();
   } catch (Exception e) {
    e.printStackTrace();
   }
  }
  
  return null;
 }

分享到:
评论

相关推荐

    ajax实现java文件下载

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

    libcurl下载文件并显示进度

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

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

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

    httpclient和RestfuL风格上传下载文件

    例如,一个节点可能需要将本地的文件上传到另一个节点,或者从其他节点下载文件。为了实现这种交互,你需要在每个节点上都配置HTTPClient,并且在服务端提供RESTful接口,处理文件上传和下载的逻辑。 **代码注释的...

    VB使用URLDownloadToFile下载文件实例

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

    Android 下载文件Demo

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

    WebService上传下载文件

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

    文件下载的代码

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

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

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

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

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

    Fish文库文档下载工具

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

    处理下载文件时中文乱码

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

    文档批量搜索下载工具

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

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

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

    在线文档下载器

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

    豆丁网文档下载工具

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

    收费文档下载方法c.zip

    这些工具能够解析百度文库的页面,抓取文档内容并将其转换成本地文件。使用这类工具时,用户需要复制百度文库文档的网页链接,然后粘贴到工具的输入框内,按照提示进行操作。值得注意的是,这种方法可能受制于网站的...

    豆丁,百度文档免费下载

    描述中的“主要是将网址复制在里面的exe中”指出,这个方法涉及到一个可执行文件(exe),可能是第三方开发的文档下载器。这类软件通常通过解析网页源代码,模拟用户行为来抓取文档,从而绕过付费下载的限制。这种...

    WordPress文件下载管理插件

    [download id="1,2,3" category="4,5,6"] 为显示多个下载文件为1,2,3的文档,category=”4,5,6″为对应的分类ID。 b.在页面中添加下载:当你添加页面时在内容框插入:[page_download]或[page_download category=...

    android实现ftp上传、下载文件,支持文件夹哦

    6. **文件下载**:下载文件则使用retrieveFile方法,传入远程文件路径和本地文件的输出流。 ```java FileOutputStream fos = new FileOutputStream("/sdcard/downloadedfile.txt"); ftpClient.retrieveFile("/...

Global site tag (gtag.js) - Google Analytics