BASE64解码后的图片显示不完整问题

BASE64解码后的图片显示不完整
从前端获取base64信息就后用以下代码进行处理,发现解析出来的图片会损坏。

StringBuffer filePathStr=new StringBuffer();
			for(int i=0;i<fileList.size();i++){
				JSONObject fileObj = fileList.getJSONObject(i);
				if(null!=fileObj){
					String fileContent=fileObj.getString("FileContent");
					String fileName=fileObj.getString("FileName");
					//Base64解码  
					byte[] bytes=Base64.decodeBase64(fileContent);
					  for (int j = 0; j < bytes.length; ++j) {  
					        if (bytes[j] < 0) {// 调整异常数据  
					        	bytes[j] += 256;  
					        }  
					  }
					  

导致损坏可能为以下原因
一:需要去掉如下头部信息。
二:

因为ajax在传输过程中加号会变成空格而base64里是有加号的,所以在ajax传输前先要对base64进行编码,把加号替换成%2B的url编码。
var img = imageData.replace(/+/g,"%2B");
imageData就是原始的base64码


©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页