java 图片转base64字符串、base64字符串转图片,具体内容如下
1. 图片转base64字符串:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
/**
* base64编码字符串转换为图片
* @param imgstr base64编码字符串
* @param path 图片路径
* @return
*/
public static boolean base64strtoimage(string imgstr, string path) {
if (imgstr == null )
return false ;
base64decoder decoder = new base64decoder();
try {
// 解密
byte [] b = decoder.decodebuffer(imgstr);
// 处理数据
for ( int i = 0 ; i < b.length; ++i) {
if (b[i] < 0 ) {
b[i] += 256 ;
}
}
//文件夹不存在则自动创建
file tempfile = new file(path);
if (!tempfile.getparentfile().exists()) {
tempfile.getparentfile().mkdirs();
}
outputstream out = new fileoutputstream(tempfile);
out.write(b);
out.flush();
out.close();
return true ;
} catch (exception e) {
return false ;
}
}
|
2. base64字符串转图片:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
/**
* 图片转base64字符串
* @param imgfile 图片路径
* @return
*/
public static string imagetobase64str(string imgfile) {
inputstream inputstream = null ;
byte [] data = null ;
try {
inputstream = new fileinputstream(imgfile);
data = new byte [inputstream.available()];
inputstream.read(data);
inputstream.close();
} catch (ioexception e) {
e.printstacktrace();
}
// 加密
base64encoder encoder = new base64encoder();
return encoder.encode(data);
}
|
3. 测试:
1
2
3
4
5
6
7
|
public static void main(string[] args) {
string base64str = imagetobase64str( "d:/pic/001.jpg" );
system.out.println(base64str);
boolean b = base64strtoimage(base64str, "d:/pic/temp/002.jpg" );
system.out.println(b);
}
|
效果图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://www.cnblogs.com/hooly/p/8330433.html