2012-04-29 7 views
0

% 인코딩을 위해서만 URL을 디코드하려고합니다. % non encoding 인코딩을 그대로두고 싶습니다.변경하지 않고 URL 디코딩 +

예 :

url = 
http%3A%2F%2Fwww.domain.com%2FNews%2Fpolitics%2FMPs%2Brisk%2Blosing%2Bparliamentary%2Bimmunity%2B%2F-%2F1064%2F1395978%2F-%2Flvylki%2F-%2Findex.html 

URLDecoder.decode(url, "UTF-8") = http://www.domain.com/News/politics/MPs+risk+losing+parliamentary+immunity+/-/1064/1395978/-/lvylki/-/index.html 

그러나 경우 :

url = http://www.domain.com/News/politics/MPs+risk+losing+parliamentary+immunity+/-/1064/1395978/-/lvylki/-/index.html 

URLDecoder.decode(url, "UTF-8") = http://www.domain.com/News/politics/MPs risk losing parliamentary immunity /-/1064/1395978/-/lvylki/-/index.html 

내가 좋아하는 것 :

URLDecoder.decode(url, "UTF-8") = http://www.domain.com/News/politics/MPs+risk+losing+parliamentary+immunity+/-/1064/1395978/-/lvylki/-/index.html 

가 어떻게 ""로 디코딩 +에서 URLDecoder.decode()를 방지 할 수 있습니다. 일반적으로 % 인코딩 된 문자열은 그대로두고, 즉 % 인코딩 만 변환하고 싶습니다.

답변

1
URLDecoder.decode(url.replaceAll("\\+", "%2B")) 
관련 문제