JSONTokener দিয়ে String কে JSONObject/JSONArray এ রূপান্তর করা

JSONTokener ক্লাসের ব্যবহার - অর্গ.জেসন (Org.Json) - Java Technologies

323

JSONTokener ক্লাসটি অর্গ.জেসন (Org.Json) লাইব্রেরির একটি গুরুত্বপূর্ণ অংশ, যা JSON স্ট্রিং বা ডেটা থেকে অবজেক্ট তৈরি করতে ব্যবহৃত হয়। এটি JSON স্ট্রিংকে JSONObject বা JSONArray তে রূপান্তর করতে ব্যবহৃত হয় এবং JSON ডেটা স্ট্রিং থেকে ভ্যালিড JSON অবজেক্ট বা অ্যারে তৈরি করতে সাহায্য করে। এই ক্লাসটি স্ট্রিং থেকে JSON অবজেক্ট বা অ্যারের জন্য পার্সিং (parsing) প্রক্রিয়া সরল করে।

নিচে উদাহরণসহ দেখানো হবে কিভাবে JSONTokener ব্যবহার করে একটি স্ট্রিংকে JSONObject অথবা JSONArray তে রূপান্তর করা যায়।

১. JSONTokener দিয়ে String কে JSONObject এ রূপান্তর করা

JSONTokener ব্যবহার করে একটি JSON স্ট্রিংকে JSONObject তে রূপান্তর করা খুব সহজ। আপনি JSONObject এর কনস্ট্রাক্টর থেকে JSONTokener পাস করে JSON স্ট্রিংটিকে অবজেক্টে রূপান্তর করতে পারেন।

উদাহরণ:

import org.json.JSONObject;
import org.json.JSONTokener;

public class JSONTokenerToJSONObject {
    public static void main(String[] args) {
        // JSON স্ট্রিং
        String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";

        // JSONTokener দিয়ে JSON স্ট্রিংকে JSONObject এ রূপান্তর
        JSONTokener tokener = new JSONTokener(jsonString);
        JSONObject jsonObject = new JSONObject(tokener);

        // JSONObject থেকে মান এক্সট্র্যাক্ট করা
        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 স্ট্রিং তৈরি করা হয়েছে যা একটি অবজেক্টের প্রতিনিধিত্ব করে।
  • তারপর JSONTokener ক্লাস ব্যবহার করে JSON স্ট্রিংটিকে JSONObject এ রূপান্তরিত করা হয়েছে।
  • getString() এবং getInt() মেথড ব্যবহার করে JSON অবজেক্ট থেকে মানগুলি এক্সট্র্যাক্ট করা হয়েছে।

২. JSONTokener দিয়ে String কে JSONArray এ রূপান্তর করা

এছাড়া আপনি JSONTokener ব্যবহার করে একটি JSON অ্যারে (যেমন একটি অ্যারে বা তালিকা) তৈরি করতে পারেন। যদি JSON স্ট্রিংটি একটি অ্যারে (যেমন ["item1", "item2", "item3"]) হিসেবে থাকে, তবে আপনি এটি JSONArray এ রূপান্তর করতে পারেন।

উদাহরণ:

import org.json.JSONArray;
import org.json.JSONTokener;

public class JSONTokenerToJSONArray {
    public static void main(String[] args) {
        // JSON স্ট্রিং (এটি একটি অ্যারে)
        String jsonString = "[\"apple\", \"banana\", \"cherry\"]";

        // JSONTokener দিয়ে JSON স্ট্রিংকে JSONArray এ রূপান্তর
        JSONTokener tokener = new JSONTokener(jsonString);
        JSONArray jsonArray = new JSONArray(tokener);

        // JSONArray থেকে মান এক্সট্র্যাক্ট করা
        for (int i = 0; i < jsonArray.length(); i++) {
            String fruit = jsonArray.getString(i);
            System.out.println(fruit);
        }
    }
}

কোড ব্যাখ্যা:

  • এখানে JSON স্ট্রিংটি একটি অ্যারে হিসাবে দেওয়া হয়েছে (যেমন ["apple", "banana", "cherry"])।
  • JSONTokener ব্যবহার করে JSON স্ট্রিংটিকে JSONArray এ রূপান্তর করা হয়েছে।
  • getString(i) মেথড ব্যবহার করে JSONArray থেকে প্রতিটি আইটেম এক্সট্র্যাক্ট করা হয়েছে এবং কনসোলে প্রদর্শন করা হয়েছে।

৩. JSONTokener এর ব্যবহার এবং সুবিধা

  • JSONTokener ব্যবহার করলে আপনি JSON স্ট্রিংয়ের পার্সিং প্রক্রিয়া নিয়ন্ত্রণ করতে পারেন, যেমন এটি স্ট্রিংটি JSON অবজেক্ট বা অ্যারে কিনা তা যাচাই করা।
  • এটি JSON ডেটা স্ট্রিংকে যথাযথভাবে পার্স করে সংশ্লিষ্ট JSONObject বা JSONArray অবজেক্ট তৈরি করে।

৪. JSONTokener এর অন্যান্য বৈশিষ্ট্য

  • nextValue(): JSON স্ট্রিং থেকে পরবর্তী মান রিটার্ন করে।
  • skipPast(): নির্দিষ্ট একটি চিহ্ন পর্যন্ত JSON স্ট্রিংটি স্কিপ করতে ব্যবহৃত হয়।
  • more(): JSON স্ট্রিংয়ের অবশিষ্ট অংশ পড়ে দেখতে ব্যবহৃত হয়।

উদাহরণ:

import org.json.JSONTokener;
import org.json.JSONObject;

public class JSONTokenerMethodsExample {
    public static void main(String[] args) {
        // JSON স্ট্রিং
        String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";

        // JSONTokener দিয়ে JSON স্ট্রিংকে JSONObject এ রূপান্তর
        JSONTokener tokener = new JSONTokener(jsonString);

        // পরবর্তী মান পড়া
        Object name = tokener.nextValue();
        System.out.println("First value: " + name);

        // পরবর্তী JSON অবজেক্টে প্রবেশ
        JSONObject jsonObject = new JSONObject(tokener);
        System.out.println("Full JSON Object: " + jsonObject.toString());
    }
}

সারাংশ

  • JSONTokener একটি শক্তিশালী ক্লাস যা JSON স্ট্রিংকে JSONObject বা JSONArray তে রূপান্তর করতে ব্যবহৃত হয়।
  • এটি JSON ডেটা স্ট্রিং থেকে সহজেই JSON অবজেক্ট বা অ্যারে তৈরি করার জন্য কার্যকরী এবং পার্সিং প্রক্রিয়া সহজ করে।
  • JSONTokener এর মাধ্যমে আপনি JSON স্ট্রিংয়ের বিভিন্ন অংশ যেমন অবজেক্ট বা অ্যারে কাস্টমাইজডভাবে পার্স করতে পারেন এবং তারপরে সংশ্লিষ্ট JSON অবজেক্ট বা অ্যারে থেকে ডেটা এক্সট্র্যাক্ট করতে পারেন।

এভাবে JSONTokener ব্যবহার করে JSON স্ট্রিংকে JSONObject বা JSONArray তে রূপান্তর করা যায় এবং JSON ডেটার সঙ্গে কাজ করতে আরও সুবিধা পাওয়া যায়।

Content added By
Promotion

Are you sure to start over?

Loading...