StringBuffer downLoadPath = new StringBuffer();
//获取项目中temp文件夹的路径
String path = request.getSession().getServletContext().getRealPath("/") + "temp" + File.separator;
//获取需下载的文件名称
String targetName = AAA(l_bid_id,path);
System.out.println("说明书下载targetName" + targetName + "-----------------------------------------------------");
java.io.BufferedInputStream bis = null;
java.io.BufferedOutputStream bos = null;
try {
response.setContentType("text/html;charset=utf-8");
request.setCharacterEncoding("UTF-8");
String ctxPath = request.getSession().getServletContext().getRealPath("/") + "temp" + File.separator+targetName;
downLoadPath.append(ctxPath);
long fileLength = new File(downLoadPath.toString()).length();
response.setContentType("application/octet-stream;");
//需下载的文件名中包含汉字
response.setHeader("Content-Disposition", "attachment; filename=" + new String(targetName.getBytes("gbk"), "ISO8859-1"));
response.setHeader("Content-Length", String.valueOf(fileLength));
bis = new BufferedInputStream(new FileInputStream(downLoadPath.toString()));
bos = new BufferedOutputStream(response.getOutputStream());
byte[] buff = new byte[2048];
int bytesRead;
while (-1 != (bytesRead = bis.read(buff, 0, buff.length))) {
bos.write(buff, 0, bytesRead);
}
bos.flush();
} catch (Exception ex) {
ex.printStackTrace();
} finally {
try {
if (bis != null)
bis.close();
if (bos != null){
bos.flush();
bos.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
相关推荐
用VS 2017做的一个c#关键字高亮和提示框功能,颜色,关键字,特殊分隔符都可以自定义,为了不上淘宝买下载资源,把自己的小项目贡献给大家,希望大家能原谅我收取部分积分,一键运行即可,源码简洁明了,有非常明确...
在Ant Design Pro框架下实现文件下载功能,是前端开发者在开发过程中常遇到的需求。本文将详细介绍如何在Ant Design ...例如,文件的存储路径、下载参数的构建、下载提示信息以及错误处理逻辑都需根据实际情况来编写。
在网页设计中,提示框(Bubble提示框)是一种常见的用户...这个"css实现Bubble提示框效果.rar"文件中的"jiaoben615"可能是源代码示例,你可以下载并参考其中的实现方式,进一步学习和理解CSS在创建提示框方面的应用。
在这个"Ajax+servlet实现搜索框智能提示"的主题中,我们将探讨如何利用Ajax技术和Servlet来创建一个实时、动态的搜索框,提供智能的用户输入建议。 首先,让我们了解Ajax的基本原理。Ajax的核心是XMLHttpRequest...
在本资源中,你将获得一个已经封装好的悬浮提示框源码,这意味着你可以直接下载并应用到你的项目中,无需复杂的开发过程,简单易用。 悬浮提示框的实现主要涉及HTML、CSS和JavaScript三大部分。HTML用于创建基础...
在Android开发中,为了提供与iOS相似的用户体验,开发者经常需要实现类似iOS风格的提示框。这个主题,"Android 仿IOS提示框",主要关注的是如何在Android平台上创建具有iOS设计元素的对话框或者警示框。iOS的提示框...
在JavaScript(JS)编程中,动态生成元素是常见的需求,特别是在...以上就是实现“JS动态生成下载详细信息提示框”的主要步骤和涉及的技术点。通过理解这些概念,开发者可以构建出更具有交互性和用户体验感的前端应用。
jQuery Tipso插件正是一种用于实现消息提示框特效的工具,它可以帮助开发者轻松地为网页元素添加各种提示效果,增强用户对页面内容的理解和操作体验。这个压缩包文件"基于jQuery Tipso插件实现消息提示框特效源码....
jQuery提示框插件是Web开发中的一个实用工具,它扩展了基本的JavaScript功能,使得在网页上创建交互式、美观的提示信息变得简单易行。这些插件通常提供丰富的自定义选项,包括样式、动画效果、位置控制以及与用户...
在本文中,我们将深入探讨如何使用C#编程语言来实现仿MSN提示框和仿迅雷提示框的效果。这两个项目展示了如何在Windows桌面应用程序中创建自定义的用户界面元素,以模仿流行软件的交互体验。 首先,让我们从仿MSN...
2. **自定义窗口样式**:要实现迅雷提示框的风格,需要对窗体的非客户区进行操作。可以使用`SetStyle(ControlStyles.SupportsTransparentBackColor, true)`启用透明背景,并通过重写`OnPaintBackground`方法避免绘制...
"仿ios提示框"就是一个这样的例子,它是一款第三方库,用于在Android应用中实现与iOS系统类似的提示框效果。 该库名为SVProgressHUD,它是"Simple and Valuable Progress HUD"的缩写,由开发者创建,旨在为Android...
本资源提供的"delphi气泡提示框"是一个专门为Delphi开发者设计的组件或代码库,用于在用户界面中实现气泡提示功能。气泡提示通常用于在不打断用户工作流程的情况下,提供额外的信息或者引导用户操作。 首先,我们来...
为了实现下载功能,需要在`<el-link>`组件上设置`target="_blank"`属性,使得点击时在新窗口打开,而`download`属性则用来设置下载文件时使用的默认文件名。由于Vue模板中不能直接使用`download`属性,通常需要结合...
"CSS实现的登录框"这个主题涉及到使用层叠样式表(Cascading Style Sheets, 简称CSS)来创建一个具有视觉吸引力和实用性的登录界面。下面我们将深入探讨如何利用CSS来设计登录框,以及在这个过程中可能涉及的相关...
在网页开发中,为了增强用户体验,常常需要使用到消息提示框来向用户显示信息、警告或确认操作。jQuery Tipso是一款高效且易于使用的提示框插件,尤其适合初学者进行页面效果的渲染。这款插件提供了丰富的自定义选项...
在Vue.js框架中,实现文件下载并判断下载状态是常见的需求,特别是在处理用户交互和数据传输时。本篇文章将详细介绍如何在Vue项目中实现这一功能,并通过Axios库来管理HTTP请求。 首先,我们需要引入Axios库,它是...
1.淡入淡出弹出Toast提示框 2.显示固定时长后自动消失 3.友好性图标 4.可根据父容器定位 5.可根据显示器定位,并去除任务栏高度和宽度(为了防止某些装逼人士,喜欢把默认的底部任务栏移至其它方向) 6.可跟随父容器...
在本文中,我们将深入探讨如何在WPF(Windows Presentation Foundation)中实现一个仿QQ消息提示框的功能。WPF是.NET框架的一部分,它提供了一个强大的、声明式的用户界面开发平台,支持丰富的图形效果和动画。 ...