[英]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
your string is not a proper encoding string, 你可以在這里查看
它清楚地顯示錯誤(標記為紅色),刪除這些字符,您可以再次驗證和檢查。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.