Base64 解码崩溃 android
Base64 decode crash android
java.lang.IllegalArgumentException: bad base-64
val base64 = Base64.decode(string3, Base64.URL_SAFE)
val str = String(base64, charset("UTF-8"))
string3 = "eyJzdWNjZXNzIjp0cnVlLCJyZWFzb25zIjp7IjUiOiJMYXRlIGFycml2YWwgYXQgU2Nob29sIiwiNiI6IkVhcmx5IGRlcGFydHVyZSIsIjkiOiJMYXRlIGFycml2YWwgdG8gQ2xhc3MiLCI4MSI6IkNPVklELTE5IE9uLVByZW1pc2UifSwicmFuZCI6MTg3OTM0NDIxOSwidGltZSI6MTU5MDAzMzM5OH0%3D"
它只是偶尔发生。
大部分时间都有效。
string3
可以通过在线解码工具成功解码
我尝试以下修复
使用->
Base64.URL_SAFE
Base64.DEFAULT
Base64.NO_PADDING
Base64.NO_WRAP
val remainder = string3.length % 4
if (remainder > 0) {
val pad = "=";
val char = pad.single()
string3.padStart(string3.length + 4 - remainder, char)
}
有时会崩溃..有时会正常工作
如错误所述java.lang.IllegalArgumentException: bad base-64
您的字符串不是正确编码的字符串,您可以在此处查看
错误显示很清楚(红色标记),删除那些字符,您可以再次验证和检查。
java.lang.IllegalArgumentException: bad base-64
val base64 = Base64.decode(string3, Base64.URL_SAFE)
val str = String(base64, charset("UTF-8"))
string3 = "eyJzdWNjZXNzIjp0cnVlLCJyZWFzb25zIjp7IjUiOiJMYXRlIGFycml2YWwgYXQgU2Nob29sIiwiNiI6IkVhcmx5IGRlcGFydHVyZSIsIjkiOiJMYXRlIGFycml2YWwgdG8gQ2xhc3MiLCI4MSI6IkNPVklELTE5IE9uLVByZW1pc2UifSwicmFuZCI6MTg3OTM0NDIxOSwidGltZSI6MTU5MDAzMzM5OH0%3D"
它只是偶尔发生。
大部分时间都有效。
string3
可以通过在线解码工具成功解码
我尝试以下修复
使用->
Base64.URL_SAFE
Base64.DEFAULT
Base64.NO_PADDING
Base64.NO_WRAP
val remainder = string3.length % 4
if (remainder > 0) {
val pad = "=";
val char = pad.single()
string3.padStart(string3.length + 4 - remainder, char)
}
有时会崩溃..有时会正常工作
如错误所述java.lang.IllegalArgumentException: bad base-64
您的字符串不是正确编码的字符串,您可以在此处查看
错误显示很清楚(红色标记),删除那些字符,您可以再次验证和检查。