import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
public class Base64Test {
public static void main(String[] args) throws IOException {
String s = transByte();
decodeBase64(s);
}
public static String transByte() throws IOException{
File file = new File("C://images//2012041910064-60//10066-10//2.png");
FileInputStream fis;
String imgStr = "";
try {
fis = new FileInputStream(file);
byte[] bytes = new byte[fis.available()];
fis.read(bytes);
BASE64Encoder encoder = new BASE64Encoder();
imgStr = encoder.encode(bytes);
System.out.println(imgStr);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
return imgStr;
}
/**
* base64图片流解码
* @param imgStr
*/
public static void decodeBase64(String imgStr){
BASE64Decoder decoder = new BASE64Decoder();
//Base64解码
byte[] b;
try {
b = decoder.decodeBuffer(imgStr);
for(int i=0;i<b.length;++i)
{
if(b[i]<0)
{//调整异常数据
b[i]+=256;
}
}
//生成jpeg图片
String imgFilePath = "d://222.png";//新生成的图片
OutputStream out = new FileOutputStream(imgFilePath);
out.write(b);
out.flush();
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
BASE64test
最新推荐文章于 2024-03-25 20:00:00 发布