作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要将 Image 转换为 base64 格式,然后将其上传到服务器,然后从服务器检索 base64 字符串并将其转换回图像......如何做?
最佳答案
首先将位图转换为Base 64
ByteArrayOutputStream baos = new ByteArrayOutputStream();
Bitmap bitmap = Bitmap.createScaledBitmap("Your Bitmap Object Here", 100, 100, false);
bitmap = Bitmap.createScaledBitmap(bitmap, 100, 100, false);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] imageBytes = baos.toByteArray();
String encoded = Base64.encodeToString(imageBytes, Base64.NO_WRAP);
然后使用 Json 对象上传如下:
JSONObject jsonObject = new JSONObject();
String withBase = "data:image/jpeg;base64," + encoded;
jsonObject.put("b64", "" + withBase);
System.out.println("base 64 == " + jsonObject.toString());
return jsonObject.toString();
然后您可以在您的响应中检索这些 Base 64 字符串。
然后通过以下方式将这些Base64转换为位图:
byte[] decodedString = Base64.decode(encodedImage, Base64.DEFAULT);位图 decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
然后在您的 ImageView 中使用这些位图。
关于android - 在 android 中的服务器上上传 base64 转换后的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5512503/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!