我的Base64编码数据非常大,并且每次交易都是动态的,不是从Web服务器固定获取的。所以我需要部分地获取编码数据并部分地从base64编码数据中解码。 Base64编码数据是tiff图像数据。
为了开发此功能,我创建了一个函数,其中所有base64编码数据部分从Web服务器下载并存储在txt文件中。当所有数据都存储在txt文件中时。然后我开始部分解码数据并创建tiff图像文件。
base64编码数据未部分存储(意味着不能部分下载)并且只从网络服务器出来一次,然后部分base64解码工作正常并且tiff图像下载成功...
但是当存储base64部分编码数据(部分从网络服务器下载)并且更多次下载或循环下载数据和存储以及部分base64解码然后tiff图像不下载...不工作
答案 0 :(得分:1)
我不确定,我是否理解你的问题,但我会尝试:
无论何时解码1中发送的base64图像,都可以正常工作,但是当您在几个部分中收到部分内容时,解码失败。如果是这种情况,您必须聪明地将收到的零件粘在一起。请记住,Base64编码的每个字符代表7位信息而不是8.您不能简单地将接收的字符附加到一个大文件,数组或字符串中。 Does your server use base64 padding when sending chunks?
请记住Android does not support TIFF natively.尝试使用PNG或JPEG。
如果服务器将其作为二进制数据发送并且您在连接上打开流并使用BitmapFactory
类