Maison  >  Article  >  interface Web  >  html Chinois tronqué Lien hypertexte HTML Chinois tronqué analyse des problèmes et solutions_HTML/Xhtml_Production de pages Web

html Chinois tronqué Lien hypertexte HTML Chinois tronqué analyse des problèmes et solutions_HTML/Xhtml_Production de pages Web

WBOY
WBOYoriginal
2016-05-16 16:40:412601parcourir

Une URL de lien hypertexte dans Vm doit être associée au chinois comme paramètre de la requête Get. S'il est épissé directement, il sera tronqué après avoir été transmis à l'objet paramètre de l'action d'arrière-plan et retiré. Il doit être codé puis épissé à l'URL.
La solution est d'ajouter une variable membre dans Action pour enregistrer les paramètres chinois encodés. Lors du rendu de la page vm, supprimez la valeur de cette variable, puis collez le lien hypertexte.

Le problème rencontré ici est  : lors de l'appel de la méthode encode() de java.net.URLEncoder, si le paramètre de jeu de caractères spécifié n'est pas affiché, alors URLEncoder utilisera le jeu de caractères par défaut . Ce jeu de caractères par défaut produira des résultats différents lors de l'exécution de la méthode main() dans Eclipse et de l'exécution de l'application Web dans Tomcat, affectant ainsi les résultats d'encodage.

Copier le code
Le code est le suivant :

/**
* Traduit une chaîne en x-www-form-urlencoded
*format. Cette méthode utilise le codage par défaut de la plateforme
* comme schéma de codage pour obtenir les octets des caractères non sécurisés.
*
* @param s String à traduire.
* @deprecated La chaîne résultante peut varier en fonction de l'encodage
* par défaut de la plateforme. Utilisez plutôt la méthode encode(String,String)
* pour spécifier l’encodage.
* @renvoie le String traduit.
*/
@Obsolète
public static String encode(String s) {
String str = null
try {
str = encode(s, dfltEncName); UnsupportedEncodingException e) {
// Le système doit toujours avoir la valeur par défaut de la plate-forme
}
return str
} Le commentaire de la méthode

indique également que la raison pourquoi cela n'est pas recommandé, cette méthode encode(String) dépend du jeu de caractères de la plate-forme.
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