动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
  
   Jsp → 阅读文章

 jsp页面中的下载功能实现

作者来源: 
阅读 1996 人次 , 2006-3-29 4:23:00 


<%@ page contenttype="text/html; charset=gb2312" %>
<%@ page import="java.io.*"%>

<%!
public 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();
}
%>
<%

string filename="test.jpg";
string dirname=application.getrealpath("/web-inf/upload");
java.io.file ff=null;
string dd=dirname+system.getproperties().getproperty("file.separator")+filename;
try{
ff=new java.io.file(dd);
}
catch(exception e){
e.printstacktrace();
}
if (ff!=null&&ff.exists()&&ff.isfile())
{
long filelength = ff.length();
inputstream instream=new fileinputstream(dd);
//设置输出的格式
response.reset();
response.setcontenttype("application/x-msdownload");
response.setcontentlength((int)filelength);
response.addheader("content-disposition","attachment; filename=\"" + toutf8string(filename) + "\"");
//循环取出流中的数据
byte[] b = new byte[100];
int len;
while((len=instream.read(b)) >0)
response.getoutputstream().write(b,0,len);
instream.close();

}
%>

 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:怎么把查询参数传给分页的类
· 下一篇:如何在Web页上实现文件上传
· 使用JSP开发WebMail系统
· 如何防止IE缓存jsp文件
· 用JSP操作Cookie
· 使用JSP+JAVABEAN+XML 开发的一个例子
· Tomcat 暴露JSP文件内容


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077