JSON (JavaScript Object Notation) হল একটি জনপ্রিয় ডেটা ফরম্যাট যা সাধারণত ওয়েব সার্ভিসের মাধ্যমে ডেটা এক্সচেঞ্জের জন্য ব্যবহৃত হয়। Org.JSON লাইব্রেরি ব্যবহার করে Java-তে JSON ডেটা পার্স করা খুবই সহজ এবং কার্যকরী। JSON ডেটা পার্স করার মাধ্যমে JSON স্ট্রিং থেকে JSON অবজেক্ট বা অ্যারে তৈরি করা যায়, যা পরবর্তীতে প্রোগ্রামে ডেটা ম্যানিপুলেশন বা প্রক্রিয়াজাতকরণে ব্যবহার করা যায়।
এই টিউটোরিয়ালে, আমরা Org.JSON লাইব্রেরি ব্যবহার করে JSON ডেটা পার্স করার বিভিন্ন পদ্ধতি আলোচনা করব।
JSON ডেটা পার্সিং – JSON স্ট্রিং থেকে JSON অবজেক্ট তৈরি করা
Org.JSON লাইব্রেরি ব্যবহার করে JSON স্ট্রিং থেকে JSON অবজেক্ট তৈরি করা খুবই সহজ। JSONObject ক্লাস ব্যবহার করে JSON স্ট্রিং পার্স করতে হয়।
JSON স্ট্রিং পার্সিংয়ের উদাহরণ:
import org.json.JSONObject;
public class JSONParsingExample {
public static void main(String[] args) {
// JSON স্ট্রিং
String jsonString = "{\"name\":\"Alice\",\"age\":25,\"city\":\"New York\"}";
// JSON স্ট্রিং পার্স করা
JSONObject jsonObject = new JSONObject(jsonString);
// JSON অবজেক্ট থেকে ডেটা এক্সট্র্যাক্ট করা
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
String city = jsonObject.getString("city");
// ডেটা প্রিন্ট করা
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println("City: " + city);
}
}
কোড ব্যাখ্যা
- JSONObject jsonObject = new JSONObject(jsonString);: এখানে JSON স্ট্রিংটিকে একটি JSON অবজেক্টে রূপান্তরিত করা হচ্ছে।
- jsonObject.getString("name"): JSON অবজেক্ট থেকে "name" কী-র মান বের করা হচ্ছে।
- jsonObject.getInt("age"): JSON অবজেক্ট থেকে "age" কী-র ইনটিজার মান বের করা হচ্ছে।
- jsonObject.getString("city"): JSON অবজেক্ট থেকে "city" কী-র মান বের করা হচ্ছে।
আউটপুট:
Name: Alice
Age: 25
City: New York
JSON অ্যারে পার্স করা
Org.JSON লাইব্রেরি ব্যবহার করে JSON অ্যারে (JSONArray) পার্সও করা যায়। JSON অ্যারে একটি সারণি বা তালিকা হিসাবে কাজ করে, যার মধ্যে একাধিক অবজেক্ট থাকতে পারে।
JSON অ্যারে পার্স করার উদাহরণ:
import org.json.JSONArray;
import org.json.JSONObject;
public class JSONArrayParsingExample {
public static void main(String[] args) {
// JSON অ্যারে স্ট্রিং
String jsonArrayString = "[{\"name\":\"Alice\",\"age\":25},{\"name\":\"Bob\",\"age\":30},{\"name\":\"Charlie\",\"age\":35}]";
// JSON অ্যারে পার্স করা
JSONArray jsonArray = new JSONArray(jsonArrayString);
// JSON অ্যারের প্রতিটি অবজেক্ট থেকে ডেটা এক্সট্র্যাক্ট করা
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject person = jsonArray.getJSONObject(i); // অ্যারের প্রতিটি অবজেক্ট
String name = person.getString("name");
int age = person.getInt("age");
// ডেটা প্রিন্ট করা
System.out.println("Name: " + name + ", Age: " + age);
}
}
}
কোড ব্যাখ্যা
- JSONArray jsonArray = new JSONArray(jsonArrayString);: JSON অ্যারে স্ট্রিংটিকে একটি JSON অ্যারেতে রূপান্তরিত করা হচ্ছে।
- jsonArray.getJSONObject(i): অ্যারের প্রতিটি JSON অবজেক্ট থেকে ডেটা এক্সট্র্যাক্ট করা হচ্ছে।
- person.getString("name") এবং person.getInt("age"): JSON অবজেক্টের মধ্যে থাকা "name" এবং "age" কী থেকে মান বের করা হচ্ছে।
আউটপুট:
Name: Alice, Age: 25
Name: Bob, Age: 30
Name: Charlie, Age: 35
JSON ডেটা পার্সিংয়ের অন্যান্য অপশন
Org.JSON লাইব্রেরি দিয়ে JSON ডেটা পার্সিংয়ের সময় আরও কিছু মেথড পাওয়া যায় যা আপনাকে JSON অবজেক্ট থেকে ডেটা এক্সট্র্যাক্ট করার সময় নমনীয়তা প্রদান করে:
optString():
optString()মেথড ব্যবহার করে আপনি JSON অবজেক্টে একটি কী না থাকলে ডিফল্ট মান পেতে পারেন। এটিgetString()এর মতোই কাজ করে, তবে কী না থাকলে এটি একটি নির্দিষ্ট ডিফল্ট মান ফেরত দেয়।String country = jsonObject.optString("country", "USA"); // Default value is "USA"optInt():
optInt()মেথডটি একইভাবে কাজ করে, তবে এটি ইনটিজার ডেটার জন্য ব্যবহৃত হয় এবং যদি কী না থাকে তবে একটি ডিফল্ট মান ফেরত দেয়।int age = jsonObject.optInt("age", 0); // Default value is 0has():
has()মেথড ব্যবহার করে আপনি চেক করতে পারেন যে, একটি কী JSON অবজেক্টে আছে কিনা।if (jsonObject.has("name")) { String name = jsonObject.getString("name"); }
সারাংশ
Org.JSON লাইব্রেরি JSON ডেটা পার্স করার জন্য একটি শক্তিশালী এবং সহজ সরঞ্জাম। এটি JSON অবজেক্ট এবং অ্যারে তৈরি, পার্স, এবং ম্যানিপুলেশন করতে সহায়তা করে। আপনি JSON ডেটা থেকে সহজেই মান বের করতে পারেন এবং বিভিন্ন উপায়ে কাস্টম ডেটা হ্যান্ডেল করতে পারেন, যেমন ডিফল্ট মান ব্যবহার করা এবং কী উপস্থিত কিনা চেক করা। Org.JSON লাইব্রেরি JSON ডেটা ম্যানিপুলেশনের জন্য একটি নির্ভরযোগ্য টুল, যা Java ডেভেলপারদের JSON ডেটা প্রক্রিয়াজাতকরণের কাজকে সহজ করে তোলে।
JSON (JavaScript Object Notation) একটি লাইটওয়েট ডেটা এক্সচেঞ্জ ফরম্যাট যা ওয়েব অ্যাপ্লিকেশন, API, এবং সার্ভিসের মধ্যে ডেটা ট্রান্সফারের জন্য ব্যাপকভাবে ব্যবহৃত হয়। JSON ডেটা সাধারণত স্ট্রিং আকারে পাঠানো হয়, যা মানব-পঠনযোগ্য এবং সহজেই প্রোগ্রামmatically ম্যানিপুলেট করা যায়। Java অ্যাপ্লিকেশনগুলিতে JSON ডেটা পার্সিং হল JSON স্ট্রিংকে একটি Java অবজেক্টে রূপান্তর করার প্রক্রিয়া, যা আমাদের ডেটার সাথে কাজ করতে সহজ করে তোলে।
JSON ডেটা পার্সিং এর প্রয়োজনীয়তা
১. ডেটা এক্সচেঞ্জের জন্য স্ট্যান্ডার্ড ফরম্যাট
JSON একটি জনপ্রিয় ফরম্যাট যা বিভিন্ন প্রোগ্রামিং ভাষা এবং প্ল্যাটফর্মের মধ্যে ডেটা ট্রান্সফার করতে ব্যবহৃত হয়। উদাহরণস্বরূপ, ওয়েব API-গুলো সাধারণত JSON ফরম্যাটে ডেটা পাঠায় এবং গ্রহণ করে। JSON ডেটা পার্সিং প্রক্রিয়া নিশ্চিত করে যে আমরা এই ডেটাকে সঠিকভাবে Java অবজেক্টে রূপান্তর করতে পারব এবং সেখান থেকে কাজ করতে পারব।
২. ডাইনামিক ডেটা ব্যবস্থাপনা
JSON ডেটা অত্যন্ত ফ্লেক্সিবল এবং ডাইনামিক, যা বিভিন্ন প্রকার ডেটা (যেমন, স্ট্রিং, নাম্বার, অ্যারে, অবজেক্ট) ধারণ করতে সক্ষম। JSON পার্সিংয়ের মাধ্যমে আমরা ডাইনামিকভাবে JSON ডেটার কনটেন্ট রিড এবং ম্যানিপুলেট করতে পারি।
৩. API ইন্টিগ্রেশন
অধিকাংশ ওয়েব API JSON ফরম্যাটে ডেটা প্রদান করে। JSON ডেটা পার্সিং, API থেকে প্রাপ্ত JSON রেসপন্সকে উপযুক্ত Java অবজেক্টে রূপান্তর করার জন্য অপরিহার্য। উদাহরণস্বরূপ, একটি REST API থেকে JSON ফরম্যাটে ডেটা পাওয়ার পর, JSON পার্সিংয়ের মাধ্যমে সেই ডেটাকে ব্যবহারযোগ্য Java অবজেক্টে রূপান্তর করা হয়, যা পরবর্তী প্রসেসিংয়ের জন্য ব্যবহৃত হয়।
৪. JSON ডেটা এক্সট্র্যাকশন
JSON ডেটা পার্সিংয়ের মাধ্যমে নির্দিষ্ট কীগুলোর মান সহজেই এক্সট্র্যাক্ট করা যায়। এটি ডেটা ম্যানিপুলেশন ও কাস্টম লজিক প্রয়োগ করতে সাহায্য করে। উদাহরণস্বরূপ, JSON ডেটার মধ্যে থেকে "name", "age" ইত্যাদি কীগুলোর মান এক্সট্র্যাক্ট করা।
৫. ডেটা ভ্যালিডেশন
JSON ডেটা পার্স করার পর, আমরা এটি যাচাই করতে পারি যে ডেটার কাঠামো এবং কন্টেন্ট সঠিক আছে কিনা। এটি বিভিন্ন ধরনের ডেটা সঠিকভাবে রিসিভ এবং প্রসেস করার জন্য অপরিহার্য।
JSON পার্সিং প্রক্রিয়া
JSON ডেটা পার্সিং দুটি প্রধান পদক্ষেপে করা হয়:
- JSON স্ট্রিংয়ের পার্সিং: JSON ডেটা একটি স্ট্রিং আকারে থাকে এবং এটি একটি JSON অবজেক্ট বা অ্যারেতে রূপান্তর করা হয়। এই কাজটি JSON লাইব্রেরি (যেমন, Org.JSON, Jackson, Gson) দ্বারা সম্পন্ন হয়।
- Java অবজেক্টে রূপান্তর: পার্সিংয়ের পর, JSON ডেটা Java অবজেক্টে রূপান্তরিত হয়, যার মাধ্যমে আপনি Java প্রোগ্রামের মধ্যে সেগুলোকে ব্যবহার করতে পারেন।
Org.JSON লাইব্রেরি ব্যবহার করে JSON পার্সিং
Org.JSON লাইব্রেরি ব্যবহার করে JSON ডেটা পার্সিং এর একটি সাধারণ উদাহরণ নিচে দেওয়া হলো:
import org.json.JSONObject;
public class JsonParsingExample {
public static void main(String[] args) {
// JSON স্ট্রিং
String jsonString = "{\"name\":\"John Doe\",\"age\":30,\"isEmployed\":true}";
// JSON স্ট্রিং পার্স করা
JSONObject jsonObject = new JSONObject(jsonString);
// JSON অবজেক্ট থেকে মান এক্সট্র্যাক্ট করা
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
boolean isEmployed = jsonObject.getBoolean("isEmployed");
// প্রাপ্ত মান প্রিন্ট করা
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println("Is Employed: " + isEmployed);
}
}
এখানে, একটি JSON স্ট্রিং থেকে JSONObject তৈরি করা হয়েছে এবং তারপরে getString(), getInt(), এবং getBoolean() মেথড ব্যবহার করে JSON অবজেক্ট থেকে ডেটা এক্সট্র্যাক্ট করা হয়েছে।
JSON পার্সিংয়ের প্রয়োজনীয়তা
- ডেটা ম্যানিপুলেশন: JSON ডেটা পার্সিংয়ের মাধ্যমে আমরা ডেটা ম্যানিপুলেশন করতে পারি এবং প্রয়োজনীয় কনটেন্ট প্রসেস করতে পারি।
- ডায়নামিক ওয়েব অ্যাপ্লিকেশন: JSON পার্সিং ওয়েব অ্যাপ্লিকেশনগুলির মধ্যে ডাইনামিক ডেটা এক্সচেঞ্জ নিশ্চিত করে।
- ওপেন সোর্স টুলস: Org.JSON, Jackson, Gson ইত্যাদি JSON লাইব্রেরি JSON পার্সিংকে আরও সহজ এবং কার্যকরী করে তোলে।
সারাংশ
JSON ডেটা পার্সিং একটি গুরুত্বপূর্ণ প্রক্রিয়া যা JSON ফরম্যাটে ডেটা এক্সচেঞ্জ করার ক্ষেত্রে অপরিহার্য। Java অ্যাপ্লিকেশনগুলিতে JSON ডেটা পার্সিংয়ের মাধ্যমে আমরা ডাইনামিক ডেটার ম্যানিপুলেশন, ওয়েব API ইন্টিগ্রেশন, এবং ডেটা এক্সট্র্যাকশন সহজভাবে করতে পারি। Org.JSON এবং অন্যান্য লাইব্রেরি JSON পার্সিংয়ের জন্য একটি সরল ও কার্যকরী সমাধান প্রদান করে, যা ডেটা ব্যবস্থাপনা এবং ম্যানিপুলেশনকে আরও সহজ করে তোলে।
Org.JSON লাইব্রেরি Java তে JSON ডেটা প্রসেস করার জন্য একটি জনপ্রিয় টুল। এটি JSON ফাইল থেকে ডেটা পড়া, JSONObject এবং JSONArray অবজেক্টে রূপান্তর করা, এবং এই ডেটা ম্যানিপুলেট করার জন্য সরল API প্রদান করে। JSON ডেটা সাধারণত ফাইল থেকে পড়া হয় এবং তারপর JSONObject বা JSONArray এ রূপান্তর করা হয়। এই প্রসেসে, JSON ফাইলের ডেটা সরাসরি Java অবজেক্টে পরিবর্তন করা যায়, যা পরবর্তীতে অ্যাপ্লিকেশনে ব্যবহার করা যায়।
এখানে আমরা দেখব কিভাবে JSON ফাইল থেকে ডেটা পড়া এবং JSONObject ও JSONArray এ রূপান্তর করা যায়।
JSON ফাইল থেকে ডেটা পড়া
Org.JSON লাইব্রেরি ব্যবহার করে JSON ফাইল থেকে ডেটা পড়তে হলে, প্রথমে আপনাকে JSON ফাইলটিকে একটি স্ট্রিং বা ইনপুট স্ট্রিমে রিড করতে হবে এবং তারপর তা JSONObject বা JSONArray এ রূপান্তর করতে হবে।
JSON ফাইল থেকে JSONObject এ রূপান্তর করা
নিচে একটি উদাহরণ দেওয়া হলো যেখানে আমরা একটি JSON ফাইল থেকে ডেটা পড়ব এবং সেটি JSONObject এ রূপান্তর করব।
JSON ফাইল (example.json)
{
"name": "John Doe",
"age": 30,
"isEmployee": true,
"address": {
"street": "123 Main St",
"city": "Springfield"
}
}
Java কোড: JSON ফাইল থেকে ডেটা পড়া এবং JSONObject এ রূপান্তর করা
import org.json.JSONObject;
import org.json.JSONTokener;
import java.io.FileReader;
import java.io.IOException;
public class JSONFileReader {
public static void main(String[] args) {
try {
// JSON ফাইল থেকে ডেটা পড়া
FileReader reader = new FileReader("example.json");
// JSONTokener ব্যবহার করে JSON ডেটা লোড করা
JSONTokener tokener = new JSONTokener(reader);
JSONObject jsonObject = new JSONObject(tokener);
// JSONObject থেকে ডেটা অ্যাক্সেস করা
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
boolean isEmployee = jsonObject.getBoolean("isEmployee");
JSONObject address = jsonObject.getJSONObject("address");
String street = address.getString("street");
String city = address.getString("city");
// JSON ডেটা প্রিন্ট করা
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println("Is Employee: " + isEmployee);
System.out.println("Address: " + street + ", " + city);
// ফাইল রিডার বন্ধ করা
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
কোডের ব্যাখ্যা
- FileReader: JSON ফাইল রিড করার জন্য Java এর FileReader ক্লাস ব্যবহার করা হয়েছে।
- JSONTokener: JSONTokener ক্লাস JSON ডেটা ফাইল রিড এবং পাস (parse) করার জন্য ব্যবহৃত হয়। এটি JSON ফাইলের কনটেন্ট থেকে JSON অবজেক্ট তৈরি করে।
- JSONObject: JSON অবজেক্টের মধ্যে ডেটা অ্যাক্সেস করার জন্য ব্যবহৃত হয়। এই কোডে আমরা
getString(),getInt(),getBoolean()ইত্যাদি মেথড ব্যবহার করে JSON থেকে ডেটা অ্যাক্সেস করেছি।
JSON ফাইল থেকে JSONArray এ রূপান্তর করা
যদি JSON ফাইলটি একটি অ্যারে থাকে, তাহলে আপনি JSONArray অবজেক্ট ব্যবহার করতে পারেন। নিচে একটি উদাহরণ দেওয়া হলো যেখানে আমরা JSON ফাইল থেকে JSONArray রূপান্তর করব।
JSON ফাইল (exampleArray.json)
[
{"name": "John Doe", "age": 30},
{"name": "Jane Doe", "age": 28},
{"name": "Sam Smith", "age": 35}
]
Java কোড: JSON ফাইল থেকে JSONArray এ রূপান্তর করা
import org.json.JSONArray;
import org.json.JSONTokener;
import java.io.FileReader;
import java.io.IOException;
public class JSONArrayFileReader {
public static void main(String[] args) {
try {
// JSON ফাইল থেকে ডেটা পড়া
FileReader reader = new FileReader("exampleArray.json");
// JSONTokener ব্যবহার করে JSON ডেটা লোড করা
JSONTokener tokener = new JSONTokener(reader);
JSONArray jsonArray = new JSONArray(tokener);
// JSONArray থেকে ডেটা অ্যাক্সেস করা
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
// JSON ডেটা প্রিন্ট করা
System.out.println("Name: " + name + ", Age: " + age);
}
// ফাইল রিডার বন্ধ করা
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
কোডের ব্যাখ্যা
- JSONArray: JSON অ্যারে থেকে ডেটা অ্যাক্সেস করতে JSONArray ব্যবহার করা হয়।
- getJSONObject(i): JSONArray এর মধ্যে একটি নির্দিষ্ট ইনডেক্স থেকে JSONObject অবজেক্ট অ্যাক্সেস করতে ব্যবহৃত হয়।
- length(): JSONArray এর আকার (অথবা এটির মধ্যে মোট এলিমেন্টের সংখ্যা) জানতে ব্যবহৃত হয়।
JSON থেকে ডেটা রিড এবং রূপান্তরের গুরুত্ব
- ডেটা এক্সচেঞ্জ: JSON ফাইল ডেটা এক্সচেঞ্জের জন্য ব্যাপকভাবে ব্যবহৃত হয়, বিশেষত ওয়েব সার্ভিস এবং REST API তে। JSON ফাইল থেকে ডেটা পড়ার মাধ্যমে আপনি এই ডেটা ব্যবহার করে Java অ্যাপ্লিকেশনে কার্যকরী অপারেশন করতে পারেন।
- সরলতা: JSON ফাইল গুলি সাধারণত খুব সরল এবং পাঠযোগ্য। JSON ফাইল থেকে ডেটা পাস এবং রূপান্তর সহজ এবং দ্রুত হয়, যা ডেভেলপারদের জন্য সুবিধাজনক।
- অ্যারে এবং অবজেক্টের ম্যানিপুলেশন: JSON ফাইল অ্যারে এবং অবজেক্টের মাধ্যমে ডেটা সংরক্ষণ করে, যা সহজেই Java এ রূপান্তর করা যায়।
Org.JSON লাইব্রেরি Java তে JSON ডেটা রিড এবং রূপান্তর করতে খুবই সহজ এবং কার্যকরী। JSON ফাইল থেকে ডেটা পড়া এবং JSONObject বা JSONArray তে রূপান্তর করার মাধ্যমে আপনি সহজেই JSON ডেটার সাথে কাজ করতে পারবেন।
Org.JSON লাইব্রেরি JSON ডেটা পার্সিং এবং ম্যানিপুলেশন করার জন্য একটি শক্তিশালী টুল। JSON (JavaScript Object Notation) একটি জনপ্রিয় ডেটা ফরম্যাট যা সাধারণত ওয়েব অ্যাপ্লিকেশন এবং API-এর মধ্যে ডেটা স্থানান্তর করার জন্য ব্যবহৃত হয়। Org.JSON লাইব্রেরি ব্যবহার করে Java প্রোগ্রামে JSON ডেটা পার্স করা যায় এবং তা সহজে প্রোগ্রামেবল অবজেক্টে রূপান্তর করা যায়।
এখানে আমরা JSON ডেটা পার্স করার বিভিন্ন পদ্ধতি উদাহরণসহ দেখবো।
JSON ডেটা পার্সিং এর পদ্ধতি
১. JSON ডেটা স্ট্রিং হিসেবে পার্স করা
Org.JSON লাইব্রেরির JSONObject ক্লাস ব্যবহার করে JSON ডেটা স্ট্রিং হিসেবে পার্স করা হয়। নিচে একটি উদাহরণ দেওয়া হলো যেখানে একটি JSON স্ট্রিং পার্স করে JSONObject অবজেক্ট তৈরি করা হয়েছে।
উদাহরণ: JSON ডেটা স্ট্রিং পার্স করা
import org.json.JSONObject;
public class JsonParsingExample {
public static void main(String[] args) {
// JSON স্ট্রিং
String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
// JSON স্ট্রিং পার্স করা
JSONObject jsonObject = new JSONObject(jsonString);
// JSON ডেটার মান এক্সট্র্যাক্ট করা
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
String city = jsonObject.getString("city");
// আউটপুট
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println("City: " + city);
}
}
কোড ব্যাখ্যা
- JSON স্ট্রিং: একটি স্ট্যান্ডার্ড JSON স্ট্রিং যা
{}দিয়ে অবজেক্টকে ঘিরে রাখা হয়েছে এবং এতে তিনটি কী-মানের পেয়ার রয়েছে (name, age, city)। JSONObject: Org.JSON লাইব্রেরিরJSONObjectক্লাস ব্যবহার করে JSON স্ট্রিং পার্স করা হয়েছে। এটি JSON ডেটার কাঠামো এবং কীগুলোর মান রিড করতে সাহায্য করে।getString()এবংgetInt(): JSON অবজেক্ট থেকে কীগুলোর মান এক্সট্র্যাক্ট করার জন্যgetString()এবংgetInt()মেথড ব্যবহার করা হয়েছে।
এটি আউটপুট হিসেবে নিচের মতো ফলাফল দিবে:
Name: John
Age: 30
City: New York
২. JSON অ্যারে পার্স করা
যদি JSON ডেটায় অ্যারে (array) থাকে, তাহলে Org.JSON লাইব্রেরি দিয়ে সেটি পার্স করাও সম্ভব। নিচে একটি উদাহরণ দেওয়া হলো যেখানে JSON অ্যারে পার্স করা হচ্ছে।
উদাহরণ: JSON অ্যারে পার্স করা
import org.json.JSONArray;
import org.json.JSONObject;
public class JsonArrayParsingExample {
public static void main(String[] args) {
// JSON অ্যারে
String jsonArrayString = "[{\"name\":\"John\", \"age\":30}, {\"name\":\"Jane\", \"age\":25}]";
// JSON অ্যারে পার্স করা
JSONArray jsonArray = new JSONArray(jsonArrayString);
// প্রতিটি JSON অবজেক্ট থেকে ডেটা এক্সট্র্যাক্ট করা
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
// আউটপুট
System.out.println("Name: " + name);
System.out.println("Age: " + age);
}
}
}
কোড ব্যাখ্যা
- JSON অ্যারে: একটি JSON অ্যারে যা দুইটি JSON অবজেক্ট ধারণ করছে, প্রতিটি অবজেক্টে
nameএবংageকীগুলোর মান রয়েছে। JSONArray: Org.JSON লাইব্রেরিরJSONArrayক্লাস ব্যবহার করে JSON অ্যারে পার্স করা হয়েছে। এটি JSON অ্যারে থেকে প্রতিটি অবজেক্ট এক্সট্র্যাক্ট করতে সাহায্য করে।- লুপ ব্যবহার: অ্যারের প্রতিটি JSON অবজেক্টের উপর লুপ চালিয়ে
getString()এবংgetInt()মেথড ব্যবহার করে মান এক্সট্র্যাক্ট করা হয়েছে।
এটি আউটপুট হিসেবে নিচের মতো ফলাফল দিবে:
Name: John
Age: 30
Name: Jane
Age: 25
৩. JSON অবজেক্টে নেস্টেড ডেটা পার্স করা
JSON অবজেক্টে যদি আরেকটি JSON অবজেক্ট (nested object) থাকে, তাহলে সেটিও সহজেই পার্স করা যায়।
উদাহরণ: নেস্টেড JSON অবজেক্ট পার্স করা
import org.json.JSONObject;
public class NestedJsonParsingExample {
public static void main(String[] args) {
// JSON স্ট্রিং
String jsonString = "{\"name\":\"John\", \"address\":{\"street\":\"5th Ave\", \"city\":\"New York\"}}";
// JSON স্ট্রিং পার্স করা
JSONObject jsonObject = new JSONObject(jsonString);
// মূল JSON অবজেক্ট থেকে মান এক্সট্র্যাক্ট করা
String name = jsonObject.getString("name");
// নেস্টেড JSON অবজেক্ট থেকে ডেটা এক্সট্র্যাক্ট করা
JSONObject address = jsonObject.getJSONObject("address");
String street = address.getString("street");
String city = address.getString("city");
// আউটপুট
System.out.println("Name: " + name);
System.out.println("Street: " + street);
System.out.println("City: " + city);
}
}
কোড ব্যাখ্যা
- নেস্টেড JSON অবজেক্ট: এখানে
addressনামে একটি নেস্টেড JSON অবজেক্ট রয়েছে, যার মধ্যেstreetএবংcityকীগুলোর মান রয়েছে। getJSONObject(): নেস্টেড অবজেক্টকে রিড করতেgetJSONObject()মেথড ব্যবহার করা হয়েছে।
এটি আউটপুট হিসেবে নিচের মতো ফলাফল দিবে:
Name: John
Street: 5th Ave
City: New York
সারাংশ
Org.JSON লাইব্রেরি দিয়ে JSON ডেটা পার্সিং করা Java প্রোগ্রামিংয়ের একটি গুরুত্বপূর্ণ অংশ। আপনি JSON ডেটা স্ট্রিং, অ্যারে এবং নেস্টেড অবজেক্ট পার্স করতে পারবেন সহজেই। JSONObject এবং JSONArray ক্লাসের সাহায্যে JSON ডেটা রিড এবং এক্সট্র্যাক্ট করা সম্ভব। Org.JSON লাইব্রেরি JSON ডেটার সাথে কাজ করার জন্য একটি শক্তিশালী এবং কার্যকরী টুল।
Read more