Prvi korak u rješavanju problema je uključivanje potrebne biblioteke za rad sa JSON podacima u Javi. Za ovo možemo koristiti popularnu Java biblioteku pod nazivom JSON-java, takođe poznat kao org.json. Prvo ćemo spomenuti kako dodati biblioteku svom projektu putem Mavena i Gradlea, a zatim ćemo se upustiti u implementaciju koda.
<!-- Maven --> <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20210307</version> </dependency> <!-- Gradle --> implementation 'org.json:json:20210307'
Sljedeći koraci uključuju implementaciju Java koda koji čita JSON podatke i pretvara ih u a JSONObject. Za to ćemo koristiti klase kao što su FileInputStream i InputStreamReader da pročitate sadržaj JSON datoteke, a zatim ih raščlanite koristeći JSONTokener i JSONObject casovi.
Rad sa FileInputStream i InputStreamReader
Java pruža FileInputStream class za čitanje podataka datoteke u bajtovima, što nam omogućava pristup datoteci koja sadrži JSON podatke. U vezi, koristimo InputStreamReader class za čitanje toka podataka i pretvaranje u znakove kako bi se omogućila obrada.
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;
public class ImportJson {
public static void main(String[] args) {
// Prepare the FileInputStream
try (FileInputStream fis = new FileInputStream("example.json");
InputStreamReader isr = new InputStreamReader(fis, StandardCharsets.UTF_8)) {
// Following code will read the JSON and convert it to JSONObject
} catch (Exception e) {
e.printStackTrace();
}
}
}
Parsiranje JSON podataka pomoću JSONTokener-a i JSONObject-a
Jednom kada imamo InputStreamReader objekt za rukovanje sadržajem naše JSON datoteke, onda možemo koristiti JSONTokener i JSONObject klase za raščlanjivanje JSON podataka u upotrebljiv Java objekat. The JSONTokener čita JSON podatke znak po znak iz InputStreamReader i hrani ga JSONObject konstruktor za kreiranje konačnog objekta.
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;
import org.json.JSONObject;
import org.json.JSONTokener;
public class ImportJson {
public static void main(String[] args) {
// Prepare the FileInputStream and InputStreamReader
try (FileInputStream fis = new FileInputStream("example.json");
InputStreamReader isr = new InputStreamReader(fis, StandardCharsets.UTF_8)) {
// Read JSON data using JSONTokener
JSONTokener tokener = new JSONTokener(isr);
// Create the JSONObject
JSONObject jsonObject = new JSONObject(tokener);
// Accessing data in the JSONObject
String key = "example_key";
if (jsonObject.has(key)) {
System.out.println(jsonObject.get(key));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
Ukratko, ovaj članak je pružio detaljno objašnjenje uvoza JSON podataka i pretvaranja u JSONObject u Java. Korišćenjem JSON-java biblioteka, zajedno sa Java klasama kao što su FileInputStream, InputStreamReader, JSONTokener, I JSONObject, možete neprimetno analizirati i manipulisati JSON podacima u svojim Java aplikacijama, poboljšavajući i SEO i korisničko iskustvo kada radite sa ovim popularnim formatom podataka.