Maison > Java > javaDidacticiel > Comment puis-je encoder efficacement les adresses URL HTTP en Java ?

Comment puis-je encoder efficacement les adresses URL HTTP en Java ?

Mary-Kate Olsen
Libérer: 2024-12-31 02:41:13
original
225 Les gens l'ont consulté

How Can I Effectively Encode HTTP URL Addresses in Java?

Encodage efficace des adresses URL HTTP en Java

Lorsque vous travaillez avec des applications autonomes Java qui nécessitent le téléchargement de fichiers à partir d'URL spécifiées, l'encodage des adresses URL HTTP est joué un rôle crucial. Cependant, java.net.URLEncoder présente des limites dans l'encodage des URL, car il est principalement destiné à l'encodage de formulaires HTML.

Pour résoudre ce problème, la classe java.net.URI fournit une solution plus adaptée. En utilisant des constructeurs avec plusieurs arguments, tels que :

URI uri = new URI(
    "http", 
    "search.barnesandnoble.com", 
    "/booksearch/first book.pdf",
    null);
Copier après la connexion

la classe URI garantit que les caractères illégaux sont échappés efficacement. Cette approche évite le besoin de mécanismes de codage externes.

De plus, la méthode toASCIIString peut être utilisée pour obtenir une chaîne contenant uniquement des caractères US-ASCII, ce qui est particulièrement utile lorsque vous travaillez avec des caractères non-ASCII :

URI uri = new URI(
    "http", 
    "search.barnesandnoble.com", 
    "/booksearch/é",
    null);
String request = uri.toASCIIString();
Copier après la connexion

Pour les URL avec des requêtes, telles que http://www.google.com/ig/api?weather=São Paulo, les 5 paramètres Le constructeur de la classe URI peut être utilisé :

URI uri = new URI(
        "http", 
        "www.google.com", 
        "/ig/api",
        "weather=São Paulo",
        null);
String request = uri.toASCIIString();
Copier après la connexion

En employant ces techniques, les développeurs peuvent encoder efficacement les adresses URL HTTP en Java, garantissant ainsi un téléchargement correct des fichiers et une gestion transparente des caractères spéciaux.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal