CODE |
import java.net.URLDecoder; (...) HashMap paramtemp = new HashMap(); Set paramNames = param.keySet(); Iterator namesIt = paramNames.iterator(); while (namesIt.hasNext()) { String paramName = (String)namesIt.next(); String paramValue = (String)param.get(paramName); System.out.println("###### INPUT paramName" + paramName); System.out.println("###### INPUT paramValue" + paramValue); paramName = URLDecoder.decode(paramName, "UTF-8"); paramValue = URLDecoder.decode(paramValue, "UTF-8"); System.out.println("###### OUTPUT paramName" + paramName); System.out.println("###### OUTPUT paramValue" + paramValue); paramtemp.put(paramName, paramValue); } param = paramtemp; (...) |
param est une HashMap définie précédemment dans mon code précédemment. Ce bout de code est destiné à décoder le contenu de cette hashmap.
Ce qui pose problème dans ce bout de code, c'est URLDecoder.decode. Pour une raison que je n'arrive pas à comprendre, ceci ne décode...rien. Voici le résultat de l'exécution de mon code :
CODE |
###### INPUT paramName GA ###### INPUT paramValue test ###### OUTPUT paramName GA ###### OUTPUT paramValue test ###### INPUT paramName BU ###### INPUT paramValue tr�s gros éléphant ###### OUTPUT paramName BU ###### OUTPUT paramValue tr�s gros éléphant ###### INPUT paramName ZO ###### INPUT paramValue shadock ###### OUTPUT paramName ZO ###### OUTPUT paramValue shadock |
On le voit clairement, le "très gros éléphant" encodé en UTF-8 sort toujours encodé en UTF-8.
Ma question est-donc, comment obtenir en sortie un décodage UTF-8?