1. 程式人生 > >使用URLDecoder.decode解析字串含有"+","+"號這個特殊字元會自動轉換成空格

使用URLDecoder.decode解析字串含有"+","+"號這個特殊字元會自動轉換成空格

1.問題:

      在使用url的時候,一般從網路或是伺服器得到的一個url地址一般都是經過encode編碼過(一般是使用URLEncoder.encode),或者是我們要給服務端傳遞url引數,直接使用的話,到服務端去解析的時候(應該服務端就是URLEncoder.encode來解碼),原來沒有經歷過encode編碼的字串,比如"g/H/4/+i026qwzShXW/bSmHqkZD9GZVu6gvpAGeFzZ8=",直接通過服務端的decode解碼後就會變成:"g/H/4/  i026qwzShXW/bSmHqkZD9GZVu6gvpAGeFzZ8="

特殊符號"+"加消失了,這樣就出錯了

2. 解決方案

直接使用decode來解碼我的字串,結果+丟失,在後續使用的過程中產生了錯誤

所以,在decode前,最後encode一下:

字串被正確編碼

字串被正確解碼,就不會出現+丟失的情況