服务端通知浏览器以下载的方式打开图片

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

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

public class Demo4 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
//服务端通知浏览器以下载的方式打开图片
response.setHeader("content-disposition","attachment;filename=d1.jpg");
InputStream is = new FileInputStream(new File(""D:/TOOL/MyEclipseSpace/day04/WebRoot/images/cc.jpg"));
OutputStream os = response.getOutputStream();
byte[] buf = new byte[1024];
int len = 0;
while( (len=is.read(buf))>0 ){
os.write(buf,0,len);
}
is.close();
os.close();
}
}

原文地址:http://blog.51cto.com/357712148/2104340

时间: 2024-10-16 20:25:50

服务端通知浏览器以下载的方式打开图片的相关文章

服务端通知浏览器3秒后转到目标页面

import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class Demo2 extends HttpServlet { public void doGet(HttpServletRequest r

利用DotNetZip服务端压缩文件并下载

public void DownFile() {              string filePath = Server.MapPath("/Files/txt/bb.txt");//文件所在位置              var fs = Response.OutputStream;            using(Ionic.Zip.ZipFile zf = new Ionic.Zip.ZipFile()) {            zf.AddFile(filePath,

Datatable转换成excel并实现导出功能,导出到服务端,提供客户端下载

好久没有写笔记了,写得不好,大家将就看看吧! 这是一个关于导出Excel到服务端指定的文件中供客户去下载的一个方法:首先要获取保存服务器的物理路径,也就是绝对路径,可以使用 HttpContext.Current.Server.MapPath(".");可以获取到.最方便的就是直接用datatable转成Excel格式,当生成文件时,同时向数据库插入一条记录: 代码: public void DataTableTransmissionExcel(bool withHeaders,Dat

37. sqlplus工具连接服务端或其他电脑的oracle方式

1. 方式1:IP:监听端口/实例ID,例如:192.168.0.1:1521/orcl 2.方式2:IP:监听端口/服务名,例如:192.168.0.1:1521/ORCL.168.0.1 查看服务名方式如下: sqlplus / as sysdba; select global_name from global_name; 也可以直接查看tnsnames.ora 文件中的SERVICE_NAME

使用dwr3.0实现服务端向浏览器做消息推送,做滚动评论或弹幕效果,而且根据视频id做推送消息拦截功能

最近项目要实现视频播放时做弹幕和评论滚动,使用flash做sockt编程不会,就想到使用服务器消息推送做,翻找资料发现使用html5的websocket可以实现,但是ie8是不支持websocket的,最终确定使用dwr3做消息推送,普通的dwr3做消息推送会把消息推送到所有打开的页面,这样针对某一个视频的评论就会弹出到其他的视频中去,实现每个视频弹出各自的评论,就需要做dwr3的消息推送做过滤处理,经过一天的研究终于搞定了 贴出完整的代码demo 1 使用dwr3的web.xml的配置 <se

Android—Socket服务端与客户端用字符串的方式互相传递图片

发送图片: 首先找到具体传递的图片: private Bitmap getimage(String srcPath) { BitmapFactory.Options newOpts = new BitmapFactory.Options(); // 开始读入图片,此时把options.inJustDecodeBounds 设回true了 newOpts.inJustDecodeBounds = true; Bitmap bitmap = BitmapFactory.decodeFile(srcP

图片实现默认下载而不是打开图片(Java版)

在网页上,如果我们的超链接的地址对应的是一个jpg文件,txt文件等,点击链接时,浏览器默认的是打开这些文件而不是下载,那么如何才能实现默认下载呢. 可通过自己写一个download.jsp来实现. <span style="font-size:18px;"><%@ page contentType="text/html; charset=UTF-8"%> <%@ page import="java.net.*"%&

TYPESDK手游聚合SDK服务端设计思路与架构之三:流程优化之订单保存与通知

经过前两篇文字的分析与设计,我们已经可以搭建出一个能够支持多游戏多渠道的聚合SDK服务端,但这只是理想化状态下的一个简化模型.如果接入渠道的逻辑都是按照理想化的简化过程来构建,那么对于支付的请求,我们可以简化成这样几步: 游戏客户端创建订单. 游戏客户端(通过TYPESDK客户端)调用渠道lib库中相应接口,发起支付. 用户在弹出的支付窗口完成支付. TYPESDK服务端等待渠道服务端的回调,收到回调后通知游戏服务端. 游戏服务端执行发货动作. 但是显然这个简化流程在实际上线时是不够满足需求的,

服务端控制各种浏览器禁止缓存页面资源 学习笔记

import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class Demo2 extends HttpServlet { public voi