簡體   English   中英

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 your string is not a proper encoding string, 你可以在這里查看

它清楚地顯示錯誤(標記為紅色),刪除這些字符,您可以再次驗證和檢查。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM