Maison > Java > javaDidacticiel > le corps du texte

Comment lire le contenu d'une URL dans une chaîne avec un minimum de code Java ?

Barbara Streisand
Libérer: 2024-11-01 16:02:30
original
879 Les gens l'ont consulté

How to Read a URL's Content into a String with Minimal Java Code?

Lire le contenu d'une URL vers une chaîne avec un code Java minimal

La lecture du contenu d'une URL dans une chaîne peut être une tâche courante en Java développement. Pour y parvenir, une implémentation équivalente à toURL().getText() de Groovy est souhaitée sans avoir besoin de bibliothèques externes ou de code complexe.

Alternative Apache HttpClient

While Apache HttpClient fournit un ensemble robuste d'utilitaires HTTP, mais il se peut qu'il n'offre pas une implémentation concise sur une ou deux lignes pour la tâche à accomplir.

Approche du scanner

Une approche efficace La solution implique d'utiliser la classe Scanner en combinaison avec la méthode openStream() de l'URL. Le code suivant permet d'obtenir la fonctionnalité souhaitée :

<code class="java">String out = new Scanner(new URL("http://www.google.com").openStream(), "UTF-8").useDelimiter("\A").next();</code>
Copier après la connexion

Le scanner est initialisé avec le flux d'entrée de l'URL et configuré avec un délimiteur pour capturer l'intégralité du contenu. En utilisant une approche sur une seule ligne, le code évite la surcharge des flux et des boucles mis en mémoire tampon.

Implémentation plus complète

Pour une implémentation légèrement plus complète qui gère les exceptions potentielles, envisagez la méthode suivante :

<code class="java">public static String readStringFromURL(String requestURL) throws IOException {
    try (Scanner scanner = new Scanner(new URL(requestURL).openStream(), StandardCharsets.UTF_8.toString())) {
        scanner.useDelimiter("\A");
        return scanner.hasNext() ? scanner.next() : "";
    }
}</code>
Copier après la connexion

Cette méthode utilise un bloc try-with-resources pour fermer automatiquement les flux Scanner et URL, garantissant ainsi une bonne gestion des ressources. Il inclut également la gestion des erreurs pour détecter les exceptions potentielles.

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!