文件下载的原理或者步骤
1.将文件名作为超链接的参数,但点击下载时,提交到处理的页面或者action,在jsp或者java类里(被action调用)做如下核心步骤:
a.获得这个文件路径参数
b.response.setContentType("application/x-msdownload"); // 弹出那个下载框的形式显示
m_contentDisposition = "attachment;" //指向要下载的文件名,没有下面这一句,将默认为下载本页面
response.setHeader("Content-Disposition",m_contentDisposition + " filename=" + getFileName(s));
response.getOutputStream().write(abyte0,0,j); //输出到页面
如果文件名是中文名,那么直接先转为utf-8的字节,接着将字节转为int ,接着转为16进制,下面程序返回了一个将中文进行编码的字符串
public static String toUtf8String(String s) {
StringBuffer sb = new StringBuffer();
for (int i=0;i<s.length();i++) {
char c = s.charAt(i);
if (c >= 0 && c <= 255) {
sb.append(c);
} else {
byte[] b;
try {
b = Character.toString(c).getBytes("utf-8");
} catch (Exception ex) {
System.out.println(ex);
b = new byte[0];
}
for (int j = 0; j < b.length; j++) {
int k = b[j];
if (k < 0) k += 256;
sb.append("%" + Integer.toHexString(k).
toUpperCase());
}
}
}
return sb.toString();
}
如果使用jspsmartupload,那么很简单,几步就搞定了,不过写在jsp页面好,可以容易就得到了pageContext
,如果文件名是中文,那么调用上面那个函数,转一下中文就搞定了
SmartUpload su = new SmartUpload();
su.initialize(pageContext); // 初始化
su.downloadFile("//download//小聪科软通讯表.xls"); // 下载文件
实例在http://localhost:8088/jspAndServlet/download/download.jsp 这里就不上传了
分享到:
相关推荐
使用jspSmartUpload实现文件上传下载,包含SmartUpload方法注解、上传示例及组件包
下载即可运行,但是这个压缩包不支持中文名称的文件下载功能,我上传了一个可以下载中文的不会乱码的jspSmartUpload 组件,网址:http://download.csdn.net/detail/huahuahailang/4265620 照着使用,即可下载中文。
使用JSP实现上传下载文件jspSmartUpload 里面讲述怎么用jsp实现
完美支持中文文件下载的jspsmartUpload.jar完美支持中文文件下载的jspsmartUpload.jar完美支持中文文件下载的jspsmartUpload.jar
jspSmartUpload是一个可免费使用的全功能的文件上传下载组件,适于嵌入执行上传下载操作的JSP文件中。该组件有以下几个特点: 1、使用简单。在JSP文件中仅仅书写三五行java代码就可以搞定文件的上传或下载,方便。 2...
最近实验室做了一个项目,使用jspsmartupload来实现的文件的上传下载,原来在windows平台运行的挺好,但是后来系统移植到linux平台上,结果在上传或下载的文件名中有中文时就会出现乱码。后来查了网上一些人的解决...
文件上传组件JspSmartUpload 文件上传组件JspSmartUpload
jspsmart实现文件上传下载及jspSmartUpload.jar下载.txt jspsmart实现文件上传下载及jspSmartUpload.jar下载.txt
JspSmartUpload文件上传下载.zip
jspSmartUpload实现文件上传下载
jspsmartupload上传下载 jspsmartupload上传下载 jspsmartupload上传下载
接着重新启动Tomcat,这样就可以在JSP文件中使用jspSmartUpload组件了 按上述方法安装后,只有webapps/jspsmartupload目录下的程序可以使用jspSmartUpload组件,如果想让Tomcat服务器的所有Web应用程序都能用它...
用几个简单的java语句操作java.io.BufferedInputStream和java.io.BufferedOutputStream,就能彻底解决jspSmartUpload乱码问题。... zip包中包含了jspsmartupload.jar和文件上传、下载示例代码,直接使用即可。
使用jspSmartUpload组件在jsp中实现上传和下载
1,只需要将文件夹upload拷在你的Tomcat中的webapps 然后,直接在浏览器中运行就行了 2,jspsmartupload这个包是jsp的...jspsmartupload上传与下载,还有jspsmartupload的完整包,并且包括包中各种上传与下载的解释
jsp servlet 上传例子 jspsmartupload jsp servlet 上传例子 jspsmartupload jsp servlet 上传例子 jspsmartupload
jsp实现的上传组件,共包括5个 类的源代码,一个上传文件的类用servlet实现的
是用jspsmartupload组件实现文件的上传和下载,非常具有代表性
JspSmartUpload上传文件实例,基于JspSmartUpload组件的文件上传实例,JspSmartUpload 上传类,在JSP中进行文件上传的类,内含文档和使用例子。这个在JSP编程环境下,使用频率还是挺高的,这个例子可帮助你在JSp环境...
jspSmartUpload是一个非常方便的jsp上传...注意解压后要仔细阅读help文件夹下面的Setup.htm文件,看看怎样安装jspSmartUpload。按照它的说明,安装后就可以测试上传了。然后你可以在自己的项目中调用它,呵呵,非常方便