图片获取字节数组byte[]data, 将字节数组转换为String,之后再由String转换为byte[]data,会发现不同
2015-12-28 16:39
441 查看
servlet访问数据库(MySql)获取一张图片的字节数组byte[]data.
将字节数组转换为String类型,
说一下为什么要转换为String呢?
JSON所能够发送的数据类型
1、Number 在JavaScript中的双精度浮点格式2、String 双引号的反斜杠转义的Unicode
3、Boolean true 或 false
4、Array 值的有序序列
5、Value 它可以是一个字符串,一个数字,真的还是假(true/false),空(null )等
6、Object 无序集合键值对
7、Whitespace 可以使用任何一对中的令牌
8、null empty
也就是说JSON不能发送一个自定义的类型,只能发送上面所写的.而图片所能获取的只有byte[]类型,所以需要将
byte[]转换为String发送,
问题再于,将byte[] data1--->String 再 String--->byte[]data2 之后
发现data1 != data2. 会变大,主要是因为String获取地址长度变长
public String bitmaptoString(Bitmap bitmap) { // 将Bitmap转换成字符串 String string = null; ByteArrayOutputStream bStream = new ByteArrayOutputStream(); bitmap.compress(CompressFormat.PNG, 100, bStream); byte[] bytes = bStream.toByteArray(); string = Base64.encodeToString(bytes, Base64.DEFAULT); return string; }
public Bitmap stringtoBitmap(String string) { // 将字符串转换成Bitmap类型 Bitmap bitmap = null; try { byte[] bitmapArray; bitmapArray = Base64.decode(string, Base64.DEFAULT); bitmap = BitmapFactory.decodeByteArray(bitmapArray, 0, bitmapArray.length); } catch (Exception e) { e.printStackTrace(); } return bitmap; }
相关文章推荐
- OpenGL超级宝典笔记——遮挡查询 [转]
- 搭建VirtoCommerce2.6开发环境,同官方dev分支保持同步(上)
- 最全面的常用正则表达式大全
- [php-dom] php-dom使用注意事项
- AppDomain 详解(转)
- 互联网9大技术趋势
- Android实现短信验证码自动填写功能
- iOS同步对象性能对比(iOS锁性能对比)
- JPA entityManage
- Http协议具体解释
- 关于RBAC(Role-Base Access Control)的理解
- mysql alter
- 作为物理学的化学、生物学、天文学
- github资源
- ajax上传文件:ajaxSubmit使用
- echart搭配时间轴进行展示 (本例展示的是多时间 多地区 多指标条件 )
- 清理Oracle安装目录里的一些日志信息
- 自定义拍照功能
- 什么时候手动创建线程而不使用线程池
- android内存优化