将base64编码转成图片存到本地为什么都是损坏的?

public static boolean saveBase64Pic(String imgStr,Integer imgStrLength,String picNewname,String keepFilePath){
//对字节数组字符串进行Base64解码并生成图片
imgStr=imgStr.replaceFirst("data:image/jpeg;base64,", "");
System.out.println("后来:"+imgStr);
if (imgStr == null) //图像数据为空
return false;
BASE64Decoder decoder = new BASE64Decoder();
try
{
//Base64解码
byte[] b = decoder.decodeBuffer(imgStr);
System.out.println("imgStrLength:"+imgStrLength+",解码后长度:"+b.length);
for(int i=0;i<b.length;++i)
{
if(b[i]<0)
{//调整异常数据
b[i]+=256;
}
}
//生成jpeg图片
String imgFilePath = keepFilePath+"\\"+picNewname;//新生成的图片
//String imgFilePath ="e://222.jpg";
System.out.println(imgFilePath);
OutputStream out = new FileOutputStream(imgFilePath);
out.write(b);
out.flush();
out.close();
return true;
}
catch (Exception e)
{
return false;
}
}
相关推荐
base64编码转换为图片
base64编码转换为图片,结局图片破损或者过大打不开的情况
iOS图片与Base64编码互转的示例实现
本文还有配套的精品资源,点击获取 简介:在iOS开发中,将图片数据转换为Base64编码是一项常见的需求,以便于数据在网络或数据库中的传输和存储。Base64编码通过使用64个特定字符集来转换二进制数据,使其能够用于邮件或HTTP传输。本Demo提供了一个简洁的示例,展示了如何使用Swift语言中的 NSData 类方法进行图片数据的Base64编码和解码,并...
图片与Base64编码的高效转换工具实践
Base64编码的解码过程是对编码过程的逆向操作。首先需要理解,Base64编码是一种基于64个可打印字符表示二进制数据的方法。在解码过程中,将这64个字符每四个一组转换成对应的3字节二进制数据,最终将这些二进制数据还原为原始的图片数据。Base64解码的核心步骤可以分为以下几个部分:输入验证:首先验证输入的Base64字符串是否有效,例如,字符串长度是否为4的倍数,每个字符是否都是Base64字符集中的字符。Base64到二进制的映射。
uni-app base64转本地图片[项目源码]
本文介绍了在uni-app中将base64图片数据转换为本地图片文件的方法。通过使用plus.nativeObj.Bitmap对象,可以加载base64字符串并保存为本地文件。具体步骤包括构建base64图片字符串、创建Bitmap对象、加载base64数据以及保存到本地。成功或失败时都会有相应的回调函数进行处理。该方法适用于需要将服务器获取的base64图片保存到本地的场景,代码示例清晰展示了整个流程的实现。
PHP保存Base64图片base64_decode的问题整理
在本篇文章里小编给大家整理的是关于PHP保存Base64图片base64_decode的问题,需要的朋友们参考下。


Web 开发
