Base64 解碼decode遇到IllegalArgumentException: Illegal base64 character 20


base64字符串內容:eyJjb2RlIjoxMDAwMDAsImRhdGEiOnsiZGF0YSI6eyJydWxlIjp7ImRhZXhpbmtlcnVsZSI6IjAu MTAwMTAwMCIsImxhb2tlcnVsZSI6IjAuMDAiLCJyZWplY3RfcnVsZTFfYXQyMDE5MTEiOjAsInVw Z3JhZGVfcnVsZTFfYXQyMDE5MTEiOjAsInVwZ3JhZGVfcnVsZTJfYXQyMDE5MTEiOjAsInVwZ3Jh ZGVfcnVsZTNfYXQyMDE5MTEiOjAsInVwZ3JhZGVydWxlIjowfSwic2NvcmUiOnsibW9kZWxfdmVy IjoidmVyXzIwMTlfMTFfMjkiLCJxdWVyeV90aW1lIjoiLTEiLCJzY29yZTEiOi05OS4wLCJzY29y ZTIiOi05OS4wLCJzY29yZTMiOi05OS4wLCJzY29yZTQiOi05OS4wLCJzY29yZTUiOi05OS4wLCJz Y29yZTYiOi05OS4wLCJzY29yZTciOi05OS4wLCJzY29yZTgiOi05OS4wfX0sImhvc3RuYW1lIjoi YjYzMjEwOTlhNDMxIiwicXVlcnlUaW1lIjoiMjAyMC0wMi0xMCAxMjozNTo1NC45NzYzMTYiLCJy ZXNwX2NvZGUiOiIxIiwicmVzcF9kZXNjIjoiXHU2N2U1XHU4YmUyXHU2MjEwXHU1MjlmIiwic2l0 ZV92ZXIiOiJ6aG9uZ2JhbmdfMjAyMF8wMV8xMyJ9LCJtZXNzYWdlIjoic3VjY2VzcyJ9Cg==

發現base64內容都有空格,替換掉空格之后就好了

String res = "eyJjb2RlIjoxMDAwMDAsImRhdGEiOnsiZGF0YSI6eyJydWxlIjp7ImRhZXhpbmtlcnVsZSI6IjAu MTAwMTAwMCIsImxhb2tlcnVsZSI6IjAuMDAiLCJyZWplY3RfcnVsZTFfYXQyMDE5MTEiOjAsInVw Z3JhZGVfcnVsZTFfYXQyMDE5MTEiOjAsInVwZ3JhZGVfcnVsZTJfYXQyMDE5MTEiOjAsInVwZ3Jh ZGVfcnVsZTNfYXQyMDE5MTEiOjAsInVwZ3JhZGVydWxlIjowfSwic2NvcmUiOnsibW9kZWxfdmVy IjoidmVyXzIwMTlfMTFfMjkiLCJxdWVyeV90aW1lIjoiLTEiLCJzY29yZTEiOi05OS4wLCJzY29y ZTIiOi05OS4wLCJzY29yZTMiOi05OS4wLCJzY29yZTQiOi05OS4wLCJzY29yZTUiOi05OS4wLCJz Y29yZTYiOi05OS4wLCJzY29yZTciOi05OS4wLCJzY29yZTgiOi05OS4wfX0sImhvc3RuYW1lIjoi YjYzMjEwOTlhNDMxIiwicXVlcnlUaW1lIjoiMjAyMC0wMi0xMCAxMjozNTo1NC45NzYzMTYiLCJy ZXNwX2NvZGUiOiIxIiwicmVzcF9kZXNjIjoiXHU2N2U1XHU4YmUyXHU2MjEwXHU1MjlmIiwic2l0 ZV92ZXIiOiJ6aG9uZ2JhbmdfMjAyMF8wMV8xMyJ9LCJtZXNzYWdlIjoic3VjY2VzcyJ9Cg==";

        System.out.println(new String(Base64.getDecoder().decode(res.replaceAll(" ", "")), "UTF-8"));

 

正確的做法是編碼的時候就要把空格去除。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM