java 把一个网络图片转换为base64
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 把一个网络图片转换为base64相关的知识,希望对你有一定的参考价值。
例如url=http://q.qlogo.cn/qqapp/101123203/D4573A196E24A40A312D780C6772DEFF/100
应该怎么做呢,请大神详细点
(1)把获取url流转为bitmap
(2)把bitmap再转为base64
public static Bitmap getBitMBitmap(String urlpath)
Bitmap map = null;
try
URL url = new URL(urlpath);
URLConnection conn = url.openConnection();
conn.connect();
InputStream in;
in = conn.getInputStream();
map = BitmapFactory.decodeStream(in);
// TODO Auto-generated catch block
catch (IOException e)
e.printStackTrace();
return map;
第二步
/**
* bitmap转为base64
* @param bitmap
* @return
*/
public static String bitmapToBase64(Bitmap bitmap)
String result = null;
ByteArrayOutputStream baos = null;
try
if (bitmap != null)
baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);
baos.flush();
baos.close();
byte[] bitmapBytes = baos.toByteArray();
result = Base64.encodeToString(bitmapBytes, Base64.DEFAULT);
catch (IOException e)
e.printStackTrace();
finally
try
if (baos != null)
baos.flush();
baos.close();
catch (IOException e)
e.printStackTrace();
return result;
有什么问题提问就好追问
不能直接由url转换为base64吗,网上有人说可以,但是太简单了,看不懂String s = new sun.misc.BASE64Encoder().encode(url.getByte());
追答这个也可以,也是用函数的
追问但是我不会用,请问 大神怎么用啊,URL url=new URL(String); String s = new sun.misc.BASE64Encoder().encode(url.getByte());是这样写啊大神
追答public string base64Encode(string str) //加密
byte[] bt = Encoding.UTF8.GetBytes(str);
return Convert.ToBase64String(bt);
我查了查这个好像也行的。你那样应该也可以的。你试了没?
试了,由于小弟菜鸟一个,没有试验成功
参考技术A base64不是加密吗。。什么叫图片转化成base64.。追问就是把一个网络图片的url转换为base64格式
PHP将Base64图片转换为本地图片并保存
本文出至:新太潮流网络博客
/**
* [将Base64图片转换为本地图片并保存]
* @E-mial [email protected]
* @TIME 2017-04-07
* @WEB http://blog.iinu.com.cn
* @param [Base64] $base64_image_content [要保存的Base64]
* @param [目录] $path [要保存的路径]
*/
function base64_image_content($base64_image_content,$path){
//匹配出图片的格式
if (preg_match(‘/^(data:\s*image\/(\w+);base64,)/‘, $base64_image_content, $result)){
$type = $result[2];
$new_file = $path."/".date(‘Ymd‘,time())."/";
if(!file_exists($new_file)){
//检查是否有该文件夹,如果没有就创建,并给予最高权限
mkdir($new_file, 0700);
}
$new_file = $new_file.time().".{$type}";
if (file_put_contents($new_file, base64_decode(str_replace($result[1], ‘‘, $base64_image_content)))){
return ‘/‘.$new_file;
}else{
return false;
}
}else{
return false;
}
}
本文出至:新太潮流网络博客
以上是关于java 把一个网络图片转换为base64的主要内容,如果未能解决你的问题,请参考以下文章