当前位置: 首页 > 编程笔记 >

JSP下载服务器文件的方法

黄景胜
2023-03-14
本文向大家介绍JSP下载服务器文件的方法,包括了JSP下载服务器文件的方法的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了JSP下载服务器文件的方法。分享给大家供大家参考,具体如下:

<%@page import="java.io.FileInputStream"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@page language="java" contentType="text/html; charset=UTF-8"%>
<%@page import="com.ecc.emp.core.Context" %>
<%@page import="java.io.File" %>
<%@ include file="http://www.xxxx.com/head.jsp"%>
<%
  boolean loadFlag = false;
  ServletOutputStream ou = null;
  FileInputStream fis = null;
  try{  
    Context context=(Context)request.getAttribute("context");
    String accountFilePath = (String)context.getDataValue("accountFilePath");
    //String accountFilePath ="E:/ComeBack/Acc_BOS_CM/WebContent/upload/product/1336873410414custormerStatement.txt";
    //String accountFileName = (String)context.getDataValue("accountFileName");
    String displayFileName = (String)context.getDataValue("displayFileName");
    //String displayFileName ="custormerStatement.txt";
    String fullPath =accountFilePath;
    response.reset();
      response.setContentType("charset=UTF-8");
    response.setContentType("text/HTML");
    //response.setContentType("application/vnd.ms-excel");    
    String filename = new String(displayFileName.getBytes("gb2312"), "ISO8859-1");
    response.setHeader("Content-Disposition","attachment; filename=" + filename);
    //解决HTTPS不能下载的问题
    response.setHeader("Cache-Control","public");    
    ou = response.getOutputStream();
    File file = new File(fullPath);
    fis = new FileInputStream(file);    
    try {
      if (fis != null) {
        int filelen = fis.available();
        byte a[] = new byte[filelen];
        fis.read(a);
        ou.write(a);
        ou.flush();
      }      
      loadFlag=true;
    } catch (Exception e) {
      System.out.println("Excel is not exist!");
    }
    out = pageContext.pushBody();
  }catch(Exception e){
    e.printStackTrace();
  }finally{
    try {
      fis.close();
      ou.close();
      ou = null;
      response.flushBuffer();
    } catch (Exception e) {
      // TODO 自动生成 catch 块
      e.printStackTrace();
    }
  }
%>

希望本文所述对大家JSP程序设计有所帮助。

 类似资料:
  • 问题内容: 我有一个URL,用于保存我的工作中的一些项目,它们大部分是MDB文件,但也有一些JPG和PDF。 我需要做的是列出该目录中的每个文件(已完成)并为用户提供下载它的选项。 使用PHP如何实现? 问题答案: 要读取目录内容,可以使用readdir()并使用脚本(在我的示例中)来下载文件 在其中,您可以强制浏览器发送下载数据,并使用basename()来确保客户端不会传递其他文件名,例如

  • 本文向大家介绍jsp实现Servlet文件下载的方法,包括了jsp实现Servlet文件下载的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了jsp实现Servlet文件下载的方法。分享给大家供大家参考。具体如下: 希望本文所述对大家的JSP程序设计有所帮助。

  • 我正试图下载一些公共数据文件。我通过screensrap获取指向文件的链接,这些文件看起来都是这样的: 我在Requests library网站上找不到任何文档。

  • 我创建了一个web应用程序,它允许其用户从运行应用程序的同一服务器下载文件。然而,我不能让它按照我希望的方式工作,现在我甚至不确定这是否可能。

  • 问题内容: 我有一个有趣的任务,要求我将服务器(ASP.NET)的动态生成文件下载到客户端。在客户端,它只是JavaScript(jQuery),并且客户端能够生成很多参数来定制数据的导出方式。 我不知道如何在不重新加载页面的情况下下载文件(我不确定$.ajax在这种情况下是否可以工作)。有人可以给我一些关于这个话题的指导吗?谢谢。 问题答案: 首先,您可以从处理程序创建文件 假设您有要下载的文件

  • 问题内容: 在Windows中使用Java代码,我需要从放置在服务器中的目录中下载几个文件。服务器中的那些文件是分别生成的。所以我不知道这些文件的名称。有什么方法可以使用JAVA下载它并将其保存在特定的文件夹中。 我正在使用apache tomcat。 我阅读了与Java文件下载相关的所有其他线程。但是他们都不满足我的要求。 问题答案: 使用和分类。

  • 问题内容: 嗨,我有一堆.mp3文件,我想与NSFileManager一起使用并存储在documents文件夹中。有没有一种方法可以在线下载.mp3文件,然后将其保存到documents文件夹?这就是我正在使用的本地文件。 问题答案: 编辑/更新: Xcode 11.5•Swift 5.2 原始答案 Xcode 8.3.2•Swift 3.1

  • 问题内容: 好吧,这看起来很简单,确实如此。将文件下载到服务器所需要做的就是: 只有一个问题。如果文件很大,例如100mb,该怎么办?然后,您将耗尽内存,并且无法下载文件。 我想要的是一种在下载文件时将文件写入磁盘的方法。这样,我可以下载更大的文件,而不会遇到内存问题。 问题答案: 从PHP 5.1.0开始,支持通过传递流句柄作为参数来逐段编写: 从手册中: 如果 数据 [是第二个参数]是流资源,