Analyser JSON à partir d'une URL en Java
Bien que lire et analyser JSON à partir d'une URL en Java puisse sembler simple, des exemples apparemment verbeux peuvent conduire à la confusion. Cependant, avec l'aide de bibliothèques tierces, le processus peut être considérablement simplifié.
Analyse JSON avec org.json
Utilisation de l'artefact Maven org.json : json fournit un aperçu plus concis solution :
JsonReader.java
import org.json.JSONException; import org.json.JSONObject; import java.io.*; import java.net.URL; import java.nio.charset.Charset; public class JsonReader { // Utility method to read a stream and return its contents as a string private static String readAll(Reader rd) throws IOException { StringBuilder sb = new StringBuilder(); int cp; while ((cp = rd.read()) != -1) { sb.append((char) cp); } return sb.toString(); } // Method to read a JSON response from a URL and return it as a JSONObject public static JSONObject readJsonFromUrl(String url) throws IOException, JSONException { InputStream is = new URL(url).openStream(); try { BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8"))); String jsonText = readAll(rd); JSONObject json = new JSONObject(jsonText); return json; } finally { is.close(); } } public static void main(String[] args) throws IOException, JSONException { // Example usage: reading from Facebook's Graph API JSONObject json = readJsonFromUrl("https://graph.facebook.com/19292868552"); System.out.println(json.toString()); System.out.println(json.get("id")); } }
Exemple d'utilisation
Dans la méthode principale, vous pouvez voir un exemple de récupérer des données de l'API Graph de Facebook, en imprimant à la fois la réponse JSON complète et en extrayant une valeur spécifique (l'"id" propriété).
Conclusion
Cette solution améliorée fournit un moyen concis et efficace de lire et d'analyser les données JSON à partir d'une URL en Java, simplifiant considérablement la tâche.
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!