android base64 编码

来源:互联网 发布:sai软件绿色版 编辑:程序博客网 时间:2024/05/18 15:06

由于某些系统中只能使用ASCII字符。Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法。


Base64中是一种基于64个可打印字符来表示二进制数据的表示方法。Base64中的可打印字符包括字母A-Z、a-z、数字0-9,这样共有62个字符,此外两个可打印符号在不同的系统中而不同。

Base64索引表:

ValueChar ValueChar ValueChar ValueChar0A16Q32g48w1B17R33h49x2C18S34i50y3D19T35j51z4E20U36k5205F21V37l5316G22W38m5427H23X39n5538I24Y40o5649J25Z41p57510K26a42q58611L27b43r59712M28c44s60813N29d45t61914O30e46u62+15P31f47v63/
在android 中用base64传输数据遇到一个问题。

解码时 调用 :Base64.decode(input, NO_WRAP) 总崩溃

“IllegalArgumentException: bad base-64


上网各种查资料。也没有解决问题。
后来才发现是我传入的数据有问题。从服务器端获取的之前的数据是没base64编码的数据。所以出现了这种问题。

遇到这种问题比较合理快速的解决思路是:
两个个地方可能引起问题。
1. API稳定性有问题,不支持某种特殊情况。
2. 程序传入的参数有问题。

单元测试验证一下这个api的可靠性。传入数据。查看结果。如果没问题,进入下一步。检查程序传入的参数,这可能也涉及到一些程序逻辑。这样很快就会定位出问题的所在。






0 0
原创粉丝点击