在 XML 中发送 blob 或字节数组

Posted

技术标签:

【中文标题】在 XML 中发送 blob 或字节数组【英文标题】:Sending blob or byte array in XML 【发布时间】:2012-05-23 21:52:10 【问题描述】:

我是一名新手后端开发人员。我正在开发一个 REST 网络服务。我的要求是将 BLOB 内容从服务器发送到移动端。我的疑问是,是否可以在 XML 中发送 BLOB 还是应该将其转换为 ByteArray 并发送?

【问题讨论】:

【参考方案1】:

首先。 将您的位图转换为 ByteArray,然后将该字节数组转换为 Base64 字符串格式并以 xml 格式发送该 Base64 字符串格式。

ByteArrayOutputStream baos = new ByteArrayOutputStream();  
bmp.compress(CompressFormat.PNG, 0 , baos); //bmp is the bitmap object   
byte[] b = baos.toByteArray(); 
String encodedImage = Base64.encodeToString(b, Base64.DEFAULT);

现在在您的 xml 中发送 encodedImage...

Base64 到位图的转换

public static Bitmap convertByteArrayToBitmap(String Base64String) 

    byte[] data = Base64.decode(Base64String, Base64.DEFAULT);
    Bitmap bitmap = BitmapFactory.decodeByteArray(data , 0, data.length);
    return bitmap;

【讨论】:

感谢BB专家的回复,我试试看。 BB专家,你能帮我做逆向工程吗? 哟!这行得通,但应用程序真的很慢,我正在后台线程中运行网络连接、SAXParsing 和 DB 插入.. 你需要压缩图片然后尝试上传。那么它将平均快速运行。 好的,谢谢您的回复,以上要求是logo。平均而言,每个徽标将达到 20000 个字符[]。是不是太大了?

以上是关于在 XML 中发送 blob 或字节数组的主要内容,如果未能解决你的问题,请参考以下文章

如何将xml doc作为字节数组发送到soap服务?

如何将字节数组转换为blob

如何检查字节数组是不是为有效的pdf文件[关闭]

以字节数组和二进制 (BLOB) 存储图像之间的区别以及哪个更快

Java中的解析字节数组

在java中如何把字节数组存储到数据库?