图片url转base64

package com.lance.application.utils;

import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;

import org.springframework.util.Base64Utils;

public class PicUtils {
	
	public static void main(String[] args) {
		try {
			String result = GetUrlImageToBase64("http://wx.qlogo.cn/mmopen/LNbf7sBg8knI4jl9d59XJsSm7mKFmKjS6SgOp4eZZU3zdJlUuHibGFWkEBia2nLJCeywKpZic5WicQunTh6ZsicsUmlDGUDynxEhU/0");
			System.out.println(result);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
	public static String GetUrlImageToBase64(String url) throws Exception {  
        if (url == null || "".equals(url.trim()))  
            return null;  
        URL u = new URL(url);  
        // 打开图片路径  
        HttpURLConnection conn = (HttpURLConnection) u.openConnection();  
        // 设置请求方式为GET  
        conn.setRequestMethod("GET");  
        // 设置超时响应时间为5秒  
        conn.setConnectTimeout(5000);
        conn.setReadTimeout(5000);
        // 通过输入流获取图片数据  
        InputStream inStream = conn.getInputStream(); 
        ByteArrayOutputStream swapStream = new ByteArrayOutputStream();  
        byte[] buff = new byte[1024];  
        int rc = 0;  
        while ((rc = inStream.read(buff, 0, 1024)) > 0) {  
            swapStream.write(buff, 0, rc);  
        }  
        byte[] in2b = swapStream.toByteArray();
        // 读取图片字节数组  
        inStream.close();  
        // 返回Base64编码过的字节数组字符串 
        String result = Base64Utils.encodeToString(in2b);
        String res = "data:image/jpg;base64,"+result;	
        return res;    
    }
}


猜你喜欢

转载自blog.csdn.net/qq_16876503/article/details/78751621
今日推荐