response读取图片+下载图片

读取图片

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.URLEncoder;

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

public class OutServlet extends HttpServlet {

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

                  String url = this.getContext().getRealPath("test.jpg");
                  InputStream in = new FileInputStream(url);
                  OutputStream out = response.getOutputStream();
		  byte [] by = new by[1024];
                  int i = 0;
                  while((i=in.read(by))!=-1)
                 {

                         out.write(by,0,i);

                  }
                   in.close();

	}

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

		doGet(request,response);
	}

}

 下载图片

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.URLEncoder;

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

public class OutServlet extends HttpServlet {

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

//写入请求头下载图片文件

 responst.setHeader("Content-Disposition","attachment;filename=test.jpg");

	}

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

		doGet(request,response);
	}

}

 

可以使用

URLEncoder.encode("String","utf-8");   把一个String转成UTF-8

URLDecoder.decode("String","utf-8");   把一个String 解析成UTF-8

可以使用上面方法来给图片文件设置名称,

response.setHeader("Content-Dispostion","attachment;filename="+URLEncoder.encoder("测试.jpg","utf-8"));

常用的几种response输出数据格式(不乱码)

   ①

      response.setContentType("text/html;charset=utf-8");    // 告诉用UTF-8解析

      response.setCharacterEncoding("utf-8");    // 告诉服务器用UTF-8 解析

      response.getWriter().write("中国");

   

   ②

      response.setContenType("text/html;charset=utf-8");  // 告诉用UTF-8解析

      response.getOutputStream().write("中国".getBytes("UTF-8"));  // 浏览器用UTF-8解析

   

   ③

       response.getOutputStream().write("中国".getBytes());     //按照浏览器默认的编码解析

          日期:2018/05/21

原文地址:https://www.cnblogs.com/c-c-c-c/p/9069424.html

时间: 2024-10-06 02:37:51

response读取图片+下载图片的相关文章

多线程(四)之cell图片下载(SDWebImage的认识总结)

1.SDWebImage 首先这是个很有名的第三方框架,功能主要是:图片下载,图片缓存,下载进度监听和gif处理等.. 本次的目的是了解一下底层实现和框架的使用. 1.仿写SDWebImage 1.1自定义下载图片的NSOperation 实现起来很简单:思路如下: 1.我要下载图片在模拟器或者真机显示,肯定第一步就是在sb中拉一个imageview控件. 2.肯定要在控制器中设置一个全局属性的queue队列,一般是要懒加载一下,目的也就是实例化队列queue. 3.然后就是采用多线程中的NSO

javaWeb中在servlet中response下载图片

package org.servlet.demo; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.URL; import java.net.URLEncoder; import javax.servlet.ServletException

Web 下载图片为空

问题描述: 文件下载功能是web开发中经常使用到的功能,使用HttpServletResponse对象就可以实现文件的下载.但是下载任务正常进行,下载下来的图片却是空 问题代码: //从服务器下载一张图片 //创建字节读取流 从本地读取图片 //获取图片路径 ServletContext context = this.getServletContext(); String path= context.getRealPath("WEB-INF/classes/德拉科.jpg"); Fil

HttpURLConnection 传输数据和下载图片

一.传输字符串数据 在Android中HttpURLConnection传输数据是必不可少的,我们继续在"AsyncTask(异步任务)"案例的基础上添加. 案例: 首先我们做一个jsp的服务端,文件名为test1.jsp. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><% Stri

通过HttpURLConnection下载图片到本地(一)

一.背景说明 现在我做的系统中,需要有一个下载附件的功能,其实就是下载图片到本地中.相应的图片保存在多媒体系统中,我们只能拿到它的资源地址(url),而不是真实的文件. 这里记录的是下载单个图片. 二.代码 1.html /* * 下载选中的附件 */ $("#merchantApproval-annes-center-tb .downloadButton").click(function(){ //获取选中的行,此行包含了附件的相关信息 var row = $("#merc

.net 已知图片的网络路径,通过浏览器下载图片

没什么技术含量,主要留给自己查找方便: 如题,知道图片的完整网络路径的情况下,在浏览器中下载图片的实现: 下面这个方法实现的是把图片读取为byte数组: private byte[] GetImageContent(string url) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.AllowAutoRedirect = true; WebProxy proxy = new WebProxy

Scrapy图片下载,自定义图片名字

学习Scrapy过程中发现用Scrapy下载图片时,总是以他们的URL的SHA1 hash值为文件名,如: 图片URL:http://www.example.com/image.jpg 它的SHA1 hash值为:3afec3b4765f8f0a07b78f98c07b83f013567a0a 则下载的图片为:3afec3b4765f8f0a07b78f98c07b83f013567a0a.jpg 目的是下载的图片为:image.jpg或者xxx.jpg 可以通过编写Pipeline来实现. 以

用java页面下载图片

try { //根据String形式创建一个URL对象 String filePath = materialProductWorks.getDownloadImageUrl(); URL url = new URL(filePath); //实列一个URLconnection对象,用来读取和写入此 URL 引用的资源 HttpURLConnection conn = (HttpURLConnection)url.openConnection(); //设置请求方式为"GET" conn

Android 网络下载图片

2中方法: 1. public byte[] downloadResource(Context context, String url) throws ClientProtocolException, IOException { isStop = false; ByteArrayBuffer buffer = null; HttpGet hp = new HttpGet(url); httpClient = new DefaultHttpClient(); String netType = is