`
Tristan_S
  • 浏览: 383326 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

下载文件的推荐写法

 
阅读更多
Content-Length 能在浏览器中显示下载文件的大小
BufferedOutputStream BufferedInputStream 能优化io流
buffer 一般设置成8k 16k
在finally中close掉io


resp.setHeader("Content-Disposition", "inline; filename="
				+ URLEncoder.encode(downFilename, "UTF-8"));
		resp.setHeader("Content-Length", String.valueOf(file.length()));
		
		OutputStream out = resp.getOutputStream();
		BufferedOutputStream bout = new BufferedOutputStream(out);
		
		InputStream in = new FileInputStream(file);
		BufferedInputStream bin = new BufferedInputStream(in);
		
		byte[] buffer = new byte[16 * 1024];
		int i = -1;
		try {
			while ((i = in.read(buffer)) != -1) {
				bout.write(buffer, 0, i);
			}
		} catch (Exception e) {
			
		}finally{
			try {
				bin.close();
			} catch (Exception ignore) {
			}
			
			try {
				bout.close();
			} catch (Exception ignore) {
			}
		}
分享到:
评论

相关推荐

    ucf文件的写法

    告诉大家一个UCF文件的写法,上传上来大家参考参考

    加载swf的html文件写法

    加载swf的html文件写法 加载swf的html文件写法

    软件工程开发文档的写法

    在软件开发过程中,文档起着至关重要的作用,它不仅是团队沟通的桥梁,也是项目管理的基础。下面将详细探讨软件工程中的关键文档及其编写方法。 1. **项目开发计划**:这是项目的起点,定义了项目的范围、目标、...

    build文档写法2

    build文档写法2

    详谈同步复位和异步复位以及推荐写法

    在异步复位同步释放写法过程中,不能将复位同等效果放在if条件中。例如,当不是逻辑或,而是逻辑与时,则当condition1条件不满足时,是无法保证所有寄存器在复位后处于理想状态。因此,必须保证异步复位同步释放的...

    spring注入文件写法

    综上所述,Spring注入文件的写法涉及了数据源、Hibernate集成、事务管理和DAO的声明及配置。通过这种方式,Spring能够提供一个灵活且强大的基础设施,支持数据库操作和事务管理,同时保持代码的整洁和模块化。

    8.QT中PRO文件写法的详细写法1

    以下是对.pro文件详细写法的解析: 1. **注释**: - `.pro`文件中的注释使用`#`符号开始,直到行尾。 2. **模板变量(TEMPLATE)**: - `TEMPLATE`用于指定项目类型: - `app`:创建一个应用程序的Makefile。 ...

    DEF文件的写法.pdf

    DEF文件的写法.pdf

    Java file文件下载

    简单的文件下载 Java写法 简单的文件下载 Java写法 简单的文件下载 Java写法 简单的文件下载 Java写法 简单的文件下载 Java写法 简单的文件下载 Java写法

    sass全部语法及写法、写法案例

    本文档包含sass所有的语法、以及写法规范、写法案例。

    测试文件下载

    最多添加5个标签,每个标签不超过6个汉字,多个标签之间用“,”分隔

    ant中build.xml文档写法

    ant 中 build.xml 文档写法 Ant 是 Apache 软件基金会 JAKARTA 目录中的一个子项目,它是一个项目管理工具,具有跨平台性、操作简单、易于维护和书写等优点。Ant 的概念可能有些读者并不知道什么是 Ant 以及如何...

    PB脚本中SQL语句写法与SQL中语句写法对照

    PB脚本中SQL语句写法与SQL中语句写法对照 PB脚本中SQL语句写法与SQL中语句写法对照是非常重要的知识点,因为PB脚本和SQL语言在写法和应用中有所不同。本文将对PB脚本中SQL语句写法和SQL中语句写法进行对比和分析。 ...

    K线写法应用

    《K线写法应用》是关于股票市场技术分析的一个重要主题,主要涉及到如何用编程语言实现K线图的绘制和解析。K线图,又称蜡烛图,是金融市场中广泛使用的图表类型,它能直观地展示价格动态,帮助交易者理解和预测市场...

    软件设计文档的写法

    在软件开发过程中,软件设计文档是至关重要的,它记录了软件的设计思路、功能实现和测试策略,为开发团队提供清晰的指导。本文将详细介绍如何编写软件设计文档,并涵盖测试文档的编写方法。 首先,我们来了解软件...

    关于批处理文件的写法

    本文将深入探讨批处理文件的写法及其相关知识点。 一、批处理文件的基本结构 批处理文件通常以`.bat`或`.cmd`为扩展名,内容由一行行的DOS命令组成。每行命令后可选择性地添加分号(;)作为注释。一个简单的批处理...

    build文档写法

    build文档写法

    HTML规范及正确写法

    1. 外部引用:使用 `<script src="path/to/script.js" language="javascript" type="text/javascript"></script>` 引用外部 JavaScript 文件。 2. 内嵌脚本:使用 `<script type="text/javascript">...</script>` ...

    Java-文件上传与下载

    在Java编程语言中,文件上传和下载是Web应用程序中常见的功能。`Commons FileUpload`是Apache Commons项目的一个子项目,提供了一套处理HTTP多部分请求的API,使得在Java中实现文件上传变得简单易行。这篇博文中,...

Global site tag (gtag.js) - Google Analytics