大神们这到底是什么问题啊!

江鲤 2015-06-12 03:21:36
上码
package com.hsp.down;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class test1 extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

response.setContentType("text/html");

response.setHeader("Content-Disponsition", "attachment;filename=pitt.jpg");
String referer = request.getHeader("Referer");
System.out.println(referer);
if(referer==null||!referer.startsWith("http://localhost:8080/downTesy")){
response.sendRedirect("/downTesy/Error");
return;
}

String name=this.getServletContext().getRealPath("/Rdown/pitt.jpg");

FileInputStream fis = new FileInputStream(name);

byte by[] = new byte[1024];
int len = 0;
OutputStream os=response.getOutputStream();

while((len = fis.read(by))!=-1){
os.write(by, 0, len);
}

fis.close();
}


public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

this.doGet(request, response);
}

}
用servlet编写下载文件,下载的图片没有出现在另存为上,而是直接贴在了浏览器上,不知道是什么问题,
这样没意义啊用html技术也能实现网页上贴张图,麻烦大神指导一下这要怎么解决(自己已经处理一早上了没任何效果)
...全文
200 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
自由书 2015-06-23
  • 打赏
  • 举报
回复
将文件已流的方式扔给浏览器,在设置contentType和Header基本差不多了.如果要解决IE怪的中文编码问题.就分浏览器处理下编码就行了
vcshcn 2015-06-12
  • 打赏
  • 举报
回复
用request设置httpheader
空心萝卜 2015-06-12
  • 打赏
  • 举报
回复
换个浏览器试试

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧