java.net.URLEncoder.encode (Ssortingng) est obsolète, que dois-je utiliser à la place?

Je reçois l’avertissement suivant lors de l’utilisation de java.net.URLEncoder.encode :

  avertissement: [dépréciation] encoder (java.lang.Ssortingng)
          dans java.net.URLEncoder est devenu obsolète 

Que dois-je utiliser à la place?

Utilisez l’autre méthode d’ encode dans URLEncoder :

 URLEncoder.encode(Ssortingng, Ssortingng) 

Le premier paramètre est le texte à encoder; le second est le nom du codage de caractères à utiliser (par exemple, UTF-8 ). Par exemple:

 System.out.println( URLEncoder.encode( "urlParameterSsortingng", java.nio.charset.StandardCharsets.UTF_8.toSsortingng() ) ); 

Tu devrais utiliser:

 URLEncoder.encode("NAME", "UTF-8"); 

Utilisez la classe URLEncoder :

 URLEncoder.encode(Ssortingng s, Ssortingng enc) 

Où :

s – Chaîne à traduire.

enc – Le nom d’un codage de caractères pris en charge.

Jeux de caractères standard:

ASCII US-ASCII à sept bits, alias ISO646-US, alias le bloc latin de base du jeu de caractères Unicode ISO-8859-1 ISO Alphabet latin n ° 1, alias ISO-LATIN-1

Format de transformation UCS à huit bits UTF-8

Format de transformation UCS 16 bits UTF-16BE , ordre des octets big-endian

UTF-16LE Format de transformation UCS à 16 bits, ordre d’octet little-endian

UTF-16 Format de transformation UCS 16 bits, ordre d’octet identifié par un repère facultatif d’octet

Exemple:

 import java.net.URLEncoder; Ssortingng ssortingngEncoded = URLEncoder.encode( "This text must be encoded! aeiou áéíóú ñ, peace!", "UTF-8"); 

Le premier paramètre est la chaîne à encoder; le second est le nom du codage de caractères à utiliser (par exemple, UTF-8).

Comme référence supplémentaire pour les autres réponses, au lieu d’utiliser “UTF-8”, vous pouvez utiliser:

HTTP.UTF_8

qui est inclus depuis Java 4 dans la bibliothèque org.apache.http.protocol, incluse depuis Android API 1.