适用于Android的Base64检查器
是否可以在发送到web服务器之前检查Base64图像。web服务器接受Base64图像,因此我使用以下方法转换图像:适用于Android的Base64检查器,android,base64,Android,Base64,是否可以在发送到web服务器之前检查Base64图像。web服务器接受Base64图像,因此我使用以下方法转换图像: public void makeJSON_For_Image(int imageSize, String img_Address, String guid) { imageSizes = imageSize; img_Address = img_Address.substring(7, img_Address.length());
public void makeJSON_For_Image(int imageSize, String img_Address, String guid) {
imageSizes = imageSize;
img_Address = img_Address.substring(7, img_Address.length());
byte[] bytes = null;
byte[] buffer = new byte[8192];
int bytesRead;
try {
InputStream input = new FileInputStream(img_Address);
ByteArrayOutputStream output = new ByteArrayOutputStream();
while ((bytesRead = input.read(buffer)) != -1) {
output.write(buffer, 0, bytesRead);
}
bytes = output.toByteArray();
} catch (Exception e) {
e.printStackTrace();
LoggerExeption.log(e.getMessage() + "\n", e.getStackTrace());
}
String pic = Base64.encodeToString(bytes, Base64.DEFAULT);
}
但有时,服务会出错,因为它无法将base64转换为映像
是否可以检查base64是否正确转换
编辑
根据Alexandru Sandu的建议,我使用了如下正则表达式:
String pic = Base64.encodeToString(bytes, Base64.DEFAULT);
String regex = "^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$";
if(pic.matches(regex)){
System.out.println("it's a Base64");
}
但是我的if条件返回false!!!
这是我base46的一部分:
pic=
/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQEBAQIBAQECAgICAgQDAgICAgUEBAMEBgUGBgYF
BgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr/2wBDAQICAgICAgUDAwUKBwYHCgoKCgoK
CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgr/wAARCAUAA8ADASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwBtte/Z
4xAIcKowMCrEeoWz5WRRSG2i2+YhyMUi2UEwPOK/Pz7Qe1pbTjfE4AqNtOZcmKTPtTfslzFnyJMj
0zTVlukYiRelAEcsc8R5FIJkkXbIuCKtJcRyriUUjWccmSjjHoaB30K4Kj5Q2aQLNC28DINPk09l
+ZentUZaaLjOQKAWpKl0MESIDSiS3kHyAZqHzkIww/So2MYOUPWgLIsMkEnDAGmfZYlOFJH1pitF
nIkwfenRsRkM+R7GgQjWsmDsbI7iql1pVpKC0tsoP95OKviUJyvWkyJAS2D65oAx/wCyZRn7FeYI
/heml9YsgfPtyQP4k5Fa/kwsCE4I7ikEbrwGzQUmjNg1i3lylwOffrUyfZZM7WxUk9pZXGVuLdT7
看来这是不对的
但我检查了我的照片在网上基地64检查器,我的形象出现完全 有效图像的要求是什么?如果所有图像都必须是.png,那么您可以验证文件签名(),这是一种廉价的确定图像是否有效的方法。该图像来自mobile cammera,是的,它具有png扩展名。图像正确,但base64是否可疑?是否要签入代码?或者你只是为了发展而检查它?如果是后者,则获取带有断点的base64并在此处检查:如果是第一个,则检查此线程: