Maison  >  Article  >  Java  >  Pourquoi URLEncoder remplace-t-il les espaces par « » au lieu de « » ?

Pourquoi URLEncoder remplace-t-il les espaces par « » au lieu de « » ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-12 09:26:01797parcourir

Why Does URLEncoder Replace Spaces with

Décodage des caractères spatiaux dans URLEncoder

URLEncoder est une classe utilitaire utilisée en Java pour coder des chaînes dans l'application/x-www-form- format MIME codé en URL. Ce format est couramment utilisé dans les formulaires HTML pour encoder des données avant de les soumettre à un serveur.

Cependant, les utilisateurs peuvent rencontrer des problèmes lors de l'utilisation d'URLEncoder pour traduire des caractères d'espace. Le résultat attendu est " " pour un caractère d'espace, mais URLEncoder remplace par défaut l'espace par " " conformément aux spécifications HTML pour le codage d'URL.

Pour surmonter ce problème, les utilisateurs doivent envisager de remplacer le caractère " " par " " explicitement dans leur code après avoir appliqué URLEncoder.

System.out.println(java.net.URLEncoder.encode("Hello World", "UTF-8").replace("+", "%20"));

En modifiant la chaîne codée de cette manière, les utilisateurs peuvent obtenir le résultat souhaité :

Hello%20World

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn