`
tanglong8848
  • 浏览: 66999 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

JSP IO流下载文件

 
阅读更多
<%@page language="java" contentType="application/x-msdownload"  import='java.io.*,java.util.*'   pageEncoding="gb2312"   %><%


String filenamedisplay = ""; 
String type=request.getParameter("type")!=null?request.getParameter("type").trim():"";
if(type.equals("1")){
filenamedisplay = "paysearch_tracking_code_template.xls"; 
}else if(type.equals("2")){
filenamedisplay = "ao_tracking_code_template.xls"; 
}
else if(type.equals("3")){
filenamedisplay = "edm_tracking_code_template.xls"; 
}
else if(type.equals("4")){
filenamedisplay = "social_media_tracking_code_template.xls"; 
}
else if(type.equals("5")){
filenamedisplay = "online_ad_tracking_code_template.xls"; 
}else if(type.equals("6")){
filenamedisplay = "media_coop_tracking_code_template.xls"; 
}else{
  return;
}
      

java.io.File file = new java.io.File(application.getRealPath("/"+filenamedisplay));
   //System.out.println("->"+application.getRealPath("/"+filenamedisplay));
   //String context = session.getServletContext().getRealPath("/");
   String context2 = application.getRealPath("/"+filenamedisplay);
  // System.out.println("===>"+context);
		if (!file.exists()) {
			out.println("<script>alert('The file is not exist ! in this path=>"+application.getRealPath("/"+filenamedisplay)+"');window.close();</script>");
			return;
		}
   
       // response.setContentType("application/force-download");
    	response.setHeader("Content-Disposition", "attachment; filename=" + filenamedisplay);

 
    	try{
           BufferedInputStream   is   =   new   BufferedInputStream(new   FileInputStream(context2)); 
    		//InputStream is = application.getResourceAsStream("/"+filenamedisplay);
	    	byte[] byteArray = new byte[10240];
	    	int byteNumber = 0;
	    	int fileLength = 0;
           // System.out.println("dddd1");
          
           
	    	ServletOutputStream os = response.getOutputStream();
	    	while ((byteNumber = is.read(byteArray)) != -1) 
	    	{	    	    
	    		fileLength += byteNumber;
	    		os.write(byteArray, 0, byteNumber);	    		
	    	}
	    
            os.flush();            
	    	is.close();
	    	os.close();	    	
	       out.clear();    
           out = pageContext.pushBody();
	    }catch (Exception e){
	    	e.printStackTrace(System.out);
	    }

%>

注:<%%><%%>之间不能有空格;
分享到:
评论

相关推荐

    JSP实现文件上传(java的io流实现)

    JSP实现文件上传。type="file" 然后后台通过JAVA的io流具体实现

    java IO流方式上传下载文件,源代码

    java IO流方式上传下载文件源代码,2个JSP程序都经过测试通过,并在真实项目中使用。

    jsp 对文件的操作

    &lt;%@ page import="java.io.*"%&gt; &lt;html&gt; &lt;head&gt; 目录的建立/检查与删除&lt;/title&gt; &lt;/head&gt; &lt;body&gt; String path=request.getRealPath(""); path=path + "\Sub";//将要建立的目录路径 File d=new ...

    jsp导出csv文件

    使用io流写如文件导出csv文件,使用jsp实现。简单的方法可以推广!

    使用I/O流在jsp+servlet实现上传和下载

    有感于各种方法的上传和下载,比较麻烦,我使用简单的输入输出流,读取文件信息,实现把指定文件上传到服务器以及在页面使用脚本window.open()的方式,实现从服务器端的下载。供大家参考!不足之处,欢迎指出,不胜...

    JSP基于DES算法管理系统myeclipse开发mysql数据库web结构java编程jsp展现

    系统对上传的txt文件进行IO流读取,然后进行对应加密或者解密然后把处理后的字符串IO流的方式进行回写到txt方便用户下载 三、注意事项 1、管理员账号:admin密码:admin 数据库配置文件DBO.java 2、开发环境为...

    day019-io笔记和代码.rar

    IO流: Input Output 输入输出流 自己去扩展: 1. 对象序列化和反序列化生成一个 2. 流的种类: io包下 扩展nio包下 1. IO分类: 输入流 输出流 字节流 InputStream(抽象类) ...

    Java综合实验---学生信息管理系统

    编写一个程序,综合运用集合、IO流等相关操作,编程实现以下要求: 1) 定义一个父类,并定义多个不同子类,子类分别以不同方式重写父类的方法; 2) 定义多个类型的对象,编写方法实现多态效果; 3) 将多个对象存放在...

    JSP对图片的增删改查操作(能够删掉图片文件夹下的文件)

    JSP对图片的增删改查操作(能够删掉图片文件夹下的文件)此版本是作者在第一版的基础上改进的。新增加了删除图片的功能,数据库为mysql,经本人亲测能够运行。

    word源码java-JSP:JSP

    其实就是写了一个servlet,在这个类中的方法里面,用io流把jsp 页面中的内容一行一行的输出到浏览器. 因为这是在java类中的方法里面做的事情,所以很多数据可以用变量表示,同时也可以调用 其他类中的方法, 6)运行jsp...

    汽车租赁系统 java j2ee jstl

    汽车租赁系统,自己编的代码不完善,用于个人 主要是 j2ee 和java jsp js jstl css 都有源码全部奉献!!!

    java学习笔记

    java文件io流编程 java网络编程 java多线程编程 java ee基础1 java面向对象编程--数据库编程--&gt;java se java 基础2 html--css--javascript--&gt;div+css java ee中级部分 Servlet--Jsp--&gt;mvc模式 java ee...

    java源码包---java 源码 大量 实例

     Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入数据到文件、关闭输入流、关闭套接字关闭输出流、输出错误信息等Java编程小技巧。 Java数组倒置...

    java源码包4

     Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入数据到文件、关闭输入流、关闭套接字关闭输出流、输出错误信息等Java编程小技巧。 Java数组倒置...

    JAVA上百实例源码以及开源项目

     Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入数据到文件、关闭输入流、关闭套接字关闭输出流、输出错误信息等Java编程小技巧。 Java数组倒置...

    java 达内在线考试系统

    在这个项目开发的vew设计中用到了简单工厂的开发模式,使用swing开发,在service方面则是普通的java类大量使用if和while语句开发,在数据保存方面则是把java对象用io流按键值对的方式写入文件中。开发历时5天由自己...

    韩顺平java从入门到精通视频教程(全94讲)学习笔记整理(齐全)-共448页.docx

    java文件io流编程 java网络编程 java多线程编程 java ee基础1 java面向对象编程--数据库编程--&gt;java se java 基础2 html--css--javascript--&gt;div+css java ee中级部分 Servlet--Jsp--&gt;mvc模式 java ee高级部分 ...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...

    Java实现文件点击没反应的方法

    jsp页面链接,点击访问action用IO流去下载服务器上的文件,问题是任凭怎么点击都没反应,日志也不报错。这篇文章给大家介绍Java实现文件点击没反应的方法,需要的朋友参考下吧

    JavaEE求职简历-姓名-JAVA开发工程师-范文.doc

    熟练掌握java基础,包括面向对象、多线程、IO流、UDP/TCP、socket、文件上传下载、XML解析、JSON解析、servlet、filter、listener、HTTP协议等等; 熟练掌握 使用jdbc标准连接数据库,掌握DDL、DML、DCL、DQL和...

Global site tag (gtag.js) - Google Analytics