把代码改成下面的试试,其他的html代码都不要写
<%@ import="java.io.*" %>
<% //获得响应客户的输出流:
OutputStream o=response.getOutputStream();
//输出文件用的字节数组,每次发送500个字节到输出流:
byte b[]=new byte[500];
//下载的文件:
File fileLoad=new File("f:/2000","book.zip");//硬盘中这个路径不存在,
//下载对话框倒是能弹出
// 如果改成硬盘中实际存
// 在的路径,程序反而要报错
//客户使用保存文件的对话框:
response.setHeader("Content-disposition","attachment;filename="+"book.zip");
//通知客户文件的MIME类型:
response.setContentType("application/zip");
//通知客户文件的长度:
long fileLength=fileLoad.length();
String length=String.valueOf(fileLength);
response.setHeader("Content_Length",length);
//读取文件book.zip,并发送给客户下载:
FileInputStream in=new FileInputStream(fileLoad);
int n=0;
while((n=in.read(b))!=-1)
{ o.write(b,0,n);
}
o.flush();
o.close();
%>
<%@ import="java.io.*" %>
<% //获得响应客户的输出流:
OutputStream o=response.getOutputStream();
//输出文件用的字节数组,每次发送500个字节到输出流:
byte b[]=new byte[500];
//下载的文件:
File fileLoad=new File("f:/2000","book.zip");//硬盘中这个路径不存在,
//下载对话框倒是能弹出
// 如果改成硬盘中实际存
// 在的路径,程序反而要报错
//客户使用保存文件的对话框:
response.setHeader("Content-disposition","attachment;filename="+"book.zip");
//通知客户文件的MIME类型:
response.setContentType("application/zip");
//通知客户文件的长度:
long fileLength=fileLoad.length();
String length=String.valueOf(fileLength);
response.setHeader("Content_Length",length);
//读取文件book.zip,并发送给客户下载:
FileInputStream in=new FileInputStream(fileLoad);
int n=0;
while((n=in.read(b))!=-1)
{ o.write(b,0,n);
}
o.flush();
o.close();
%>
解决方案 »
- myeclipse 配置非本机的web服务器和jdk
- jsp怎么做成exe,可以直接运行的。。。
- java sql进行大表数据查询
- jsp从MYSQL读数据问题
- 一个关于URLRewrite的问题
- 变量未定义: 'DEF_AccessDatabase'
- 控制网页状态栏、地址栏、工具栏显示的常用方法
- Tomcat 用哪个版本比较好,请给出连接地址!!!!
- 如何才能从一个页面完成另外一个页面的用户名和密码的自动输入和自动点击功能
- java 微信 web开发中如何将页面在页面上传图片、下载保存到服务端 (只要在手机微信开发,电脑上的方法就不必了)
- 如何将网页中的applet小程序保存为本地文件?
- 用java程序从数据库生成.xml文件
<%@ page contentType="text/html; charset=gb2312"
这句话是什么意思,要弄弄清楚
<% //获得响应客户的输出流:
OutputStream o=response.getOutputStream();
//输出文件用的字节数组,每次发送500个字节到输出流:
byte b[]=new byte[500];
//下载的文件:
File fileLoad=new File("D:\\","nvidia_56.72_winxp2k_international_whql.exe");
//客户使用保存文件的对话框:
response.setHeader("Content-disposition","attachment;filename="+"nvidia_56.72_winxp2k_international_whql.exe");
//通知客户文件的MIME类型:
response.setContentType("application/zip");
//通知客户文件的长度:
long fileLength=fileLoad.length();
String length=String.valueOf(fileLength);
response.setHeader("Content_Length",length);
//读取文件book.zip,并发送给客户下载:
FileInputStream in=new FileInputStream(fileLoad);
int n=0;
while((n=in.read(b))!=-1)
{ o.write(b,0,n);
}
o.flush();
o.close();
%>