JSONTokener ক্লাসের ব্যবহার

অর্গ.জেসন (Org.Json) - Java Technologies

389

JSONTokener ক্লাসটি org.json প্যাকেজে অন্তর্ভুক্ত একটি ক্লাস যা JSON স্ট্রিং থেকে JSON অবজেক্ট বা অ্যারে পার্স করতে ব্যবহৃত হয়। এটি JSON ডেটা স্ট্রিং থেকে টোকেন (যেমন কীগুলি, মান, সেমিকোলন, পিরিয়ড ইত্যাদি) বের করার জন্য একটি স্ট্রিমিং মেথড প্রদান করে এবং ডেটাকে একটি JSON অবজেক্টে রূপান্তরিত করে। এটি JSON ডেটা পার্সিংয়ের জন্য খুবই কার্যকরী এবং সাধারণত JSONObject বা JSONArray তৈরি করার সময় ব্যবহার করা হয়।

JSONTokener ক্লাসের ব্যবহার

JSONTokener ক্লাসটি JSON স্ট্রিংয়ের উপর কাজ করে এবং এটি সেই স্ট্রিংটিকে JSON অবজেক্ট বা অ্যারে রূপান্তর করার জন্য ডেটাকে টোকেনাইজ করে। এটি একটি স্ট্রিমিং ভিত্তিক পদ্ধতি, অর্থাৎ এটি ডেটা একে একে এবং খুব দ্রুত প্রসেস করে, যা বড় JSON ডেটার ক্ষেত্রে খুবই কার্যকর।

JSONTokener এর সাইনট্যাক্স

public class JSONTokener extends java.lang.Object

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

JSONTokener এর মূল মেথড

  • next(): এটি পরবর্তী টোকেন (একটি চরিত্র বা শব্দ) রিটার্ন করে।
  • nextValue(): এটি পরবর্তী মান (value) রিটার্ন করে, যেমন স্ট্রিং, সংখ্যা, অথবা লজিক্যাল ভ্যালু (যেমন true/false)।
  • skipTo(): এটি স্ট্রিং থেকে একটি নির্দিষ্ট চরিত্রে স্কিপ করতে ব্যবহৃত হয়।
  • more(): এটি চেক করে যে এখনও ডেটা অবশিষ্ট আছে কি না।

JSONTokener উদাহরণ

এখানে একটি উদাহরণ দেওয়া হলো যেখানে JSONTokener ব্যবহার করে JSON স্ট্রিং পার্স করা হচ্ছে এবং সেই স্ট্রিং থেকে JSONObject তৈরি করা হচ্ছে।

উদাহরণ ১: JSONTokener ব্যবহার করে JSON স্ট্রিং পার্স করা

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

public class JSONTokenerExample {
    public static void main(String[] args) {
        // JSON স্ট্রিং
        String jsonString = "{ \"name\": \"John\", \"age\": 30, \"isStudent\": false }";
        
        // JSONTokener ব্যবহার করে JSON স্ট্রিং পার্স করা
        JSONTokener tokener = new JSONTokener(jsonString);
        
        // JSONObject তৈরি করা
        JSONObject jsonObject = new JSONObject(tokener);

        // JSON অবজেক্ট প্রিন্ট করা
        System.out.println(jsonObject.toString());
    }
}

আউটপুট:

{"name":"John","age":30,"isStudent":false}

এখানে, JSONTokener JSON স্ট্রিংকে টোকেনাইজ করে এবং তারপর সেই ডেটা থেকে JSONObject তৈরি করা হয়েছে। এটি স্ট্রিংয়ের প্রতিটি অংশকে পর্যায়ক্রমে পড়তে থাকে এবং JSON অবজেক্টে রূপান্তর করে।

উদাহরণ ২: JSONTokener এবং JSONArray ব্যবহার করা

JSONTokener ক্লাস ব্যবহার করে আপনি JSON অ্যারে থেকেও ডেটা পার্স করতে পারেন। নিচে একটি উদাহরণ দেওয়া হলো যেখানে JSONTokener দিয়ে একটি অ্যারে পার্স করা হয়েছে:

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

public class JSONArrayExample {
    public static void main(String[] args) {
        // JSON অ্যারে স্ট্রিং
        String jsonArrayString = "[\"Apple\", \"Banana\", \"Orange\"]";
        
        // JSONTokener ব্যবহার করে JSON অ্যারে পার্স করা
        JSONTokener tokener = new JSONTokener(jsonArrayString);
        
        // JSONArray তৈরি করা
        JSONArray jsonArray = new JSONArray(tokener);

        // JSONArray প্রিন্ট করা
        System.out.println(jsonArray.toString());
    }
}

আউটপুট:

["Apple", "Banana", "Orange"]

এখানে, JSONTokener JSON অ্যারের স্ট্রিংকে টোকেনাইজ করে এবং সেই স্ট্রিং থেকে JSONArray তৈরি করা হয়েছে।

JSONTokener এর সুবিধা

  1. স্ট্রিমিং পার্সিং: JSONTokener খুবই কার্যকরী স্ট্রিমিং ভিত্তিক পার্সিং প্রযুক্তি, যা খুব দ্রুত এবং কার্যকরীভাবে JSON ডেটা পার্স করতে সক্ষম।
  2. বড় JSON ডেটা: যখন বড় JSON ডেটা প্রসেস করা হয়, তখন JSONTokener ব্যবহার করা আরও সুবিধাজনক, কারণ এটি একে একে টোকেন গ্রহণ করে এবং পুরো JSON ডেটা একবারে মেমরিতে লোড না করে একে একে প্রোসেস করে।
  3. মেমরি দক্ষতা: বড় JSON ডেটা থাকলে JSONTokener মেমরি দক্ষতার সাথে ডেটা প্রোসেস করে, কারণ এটি শুধুমাত্র প্রয়োজনীয় টোকেনগুলিকে লোড করে।

সারাংশ

JSONTokener ক্লাসটি JSON ডেটা পার্সিংয়ের জন্য অত্যন্ত শক্তিশালী এবং কার্যকরী একটি ক্লাস। এটি JSON স্ট্রিং থেকে টোকেন বের করে এবং সেই টোকেন ব্যবহার করে JSONObject বা JSONArray তৈরি করে। এটি স্ট্রিমিং ভিত্তিক হওয়ায়, বড় JSON ডেটা প্রোসেস করার সময় মেমরি ব্যবস্থাপনা উন্নত করে এবং পারফরম্যান্সে উন্নতি আনে। JSONTokener-কে JSON ডেটা পেতে, প্রিন্ট করতে এবং অন্যান্য অ্যাপ্লিকেশনে পাঠানোর জন্য ব্যবহার করা যেতে পারে।


Content added By

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

JSONTokener কি?

JSONTokener একটি ক্লাস যা JSON ডেটা থেকে টোকেন (token) বের করার জন্য ব্যবহৃত হয়। এটি JSON ডেটা (যেমন JSON স্ট্রিং বা ফাইল) থেকে ভ্যালিড JSON অবজেক্ট বা অ্যারে বের করতে সাহায্য করে। এটি মূলত একটি "টোকেনাইজার" হিসাবে কাজ করে যা JSON ডেটার প্রতিটি অংশ (যেমন কিউ, ভ্যালু, অ্যারে, অবজেক্ট) আলাদা করে এবং প্রক্রিয়া শুরু করে।

JSONTokener সাধারণত JSONObject বা JSONArray থেকে JSON ডেটা পার্স করতে ব্যবহৃত হয়, যেখানে স্ট্রিং বা ইনপুট স্ট্রিম (যেমন ফাইল বা নেটওয়ার্ক রেসপন্স) থেকে JSON ডেটা সরাসরি পড়া হয় এবং পার্সিং করা হয়।

JSONTokener ব্যবহার কেন করা হয়?

JSONTokener ব্যবহারের মূল কারণ হল এটি JSON স্ট্রিং বা ইনপুট থেকে ডেটা স্ট্রিম হিসেবে আনার জন্য সহজ এবং কার্যকরী একটি পদ্ধতি প্রদান করে। JSON স্ট্রিংয়ের মধ্যে টোকেন বের করে এগুলোকে প্রক্রিয়া করা সহজ করে তোলে, এবং পার্সিং ত্রুটিগুলি ধরতেও সহায়তা করে।

এটি বিশেষভাবে বড় JSON ডেটা বা স্ট্রিমিং JSON ডেটার জন্য উপকারী, যেখানে পুরো ডেটাকে একবারে মেমরিতে লোড না করে অংশ ভিত্তিক প্রক্রিয়া করা সম্ভব হয়।

উদাহরণ: JSONTokener ব্যবহার করা

এখানে একটি উদাহরণ দেওয়া হলো, যেখানে JSONTokener ব্যবহার করে JSON স্ট্রিং থেকে JSONObject তৈরি করা হয়েছে।

উদাহরণ ১: JSONTokener দিয়ে JSON পার্স করা

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

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

        // JSONTokener ব্যবহার করে JSON পার্স করা
        JSONTokener tokener = new JSONTokener(jsonString);
        JSONObject jsonObject = new JSONObject(tokener);

        // JSON অবজেক্ট থেকে ডেটা এক্সট্র্যাক্ট করা
        String name = jsonObject.getString("name");
        int age = jsonObject.getInt("age");
        String city = jsonObject.getString("city");

        // JSON অবজেক্টের মান প্রিন্ট করা
        System.out.println("Name: " + name);
        System.out.println("Age: " + age);
        System.out.println("City: " + city);
    }
}

কোড ব্যাখ্যা

  • JSONTokener tokener = new JSONTokener(jsonString);
    এটি JSON স্ট্রিং থেকে টোকেন তৈরি করে এবং JSON ডেটা থেকে পার্স করার জন্য প্রস্তুত করে।
  • JSONObject jsonObject = new JSONObject(tokener);
    এই কোডটি JSONTokener থেকে JSON অবজেক্ট তৈরি করে। JSONTokener এর মাধ্যমে পার্সিং করা হচ্ছে, যা JSON স্ট্রিংকে JSON অবজেক্টে রূপান্তরিত করবে।
  • jsonObject.getString("key"), jsonObject.getInt("key")
    এটি JSON অবজেক্টের নির্দিষ্ট কীগুলির মান এক্সট্র্যাক্ট করার জন্য ব্যবহৃত হয়।

উদাহরণ ২: JSONTokener দিয়ে JSON ফাইল পার্স করা

JSONTokener স্ট্রিংয়ের পাশাপাশি ফাইল থেকেও JSON ডেটা পার্স করতে সক্ষম।

import org.json.JSONObject;
import org.json.JSONTokener;
import java.io.FileReader;
import java.io.IOException;

public class JSONTokenerFileExample {
    public static void main(String[] args) throws IOException {
        // JSON ফাইল থেকে ইনপুট স্ট্রিম তৈরি
        FileReader fileReader = new FileReader("data.json");

        // JSONTokener ব্যবহার করে JSON ফাইল পার্স করা
        JSONTokener tokener = new JSONTokener(fileReader);
        JSONObject jsonObject = new JSONObject(tokener);

        // JSON অবজেক্ট থেকে ডেটা এক্সট্র্যাক্ট করা
        String name = jsonObject.getString("name");
        int age = jsonObject.getInt("age");
        String city = jsonObject.getString("city");

        // JSON অবজেক্টের মান প্রিন্ট করা
        System.out.println("Name: " + name);
        System.out.println("Age: " + age);
        System.out.println("City: " + city);

        // ফাইল রিডারের ক্লোজিং
        fileReader.close();
    }
}

কোড ব্যাখ্যা

  • FileReader fileReader = new FileReader("data.json");
    এটি JSON ফাইল থেকে ইনপুট স্ট্রিম তৈরি করে।
  • JSONTokener tokener = new JSONTokener(fileReader);
    এটি JSONTokener তৈরি করে, যা ফাইল থেকে JSON ডেটা পাঠ করে এবং সেটিকে পার্স করার জন্য প্রস্তুত করে।
  • new JSONObject(tokener);
    JSONTokener থেকে JSON অবজেক্ট তৈরি করা হয়, যা JSON ফাইল থেকে ডেটা নিয়ে আসে।

JSONTokener এর সুবিধা

  1. স্ট্রিমিং ডেটা: JSONTokener ব্যবহার করলে স্ট্রিমিং JSON ডেটা সহজভাবে পার্স করা যায়। এতে সম্পূর্ণ JSON ডেটাকে একবারে মেমরিতে লোড করার প্রয়োজন নেই।
  2. পারফরম্যান্স উন্নতি: যখন বড় JSON ডেটা প্রসেস করা হয়, তখন পুরো ডেটা একবারে মেমরিতে লোড না করে, টোকেন দ্বারা পর্যায়ক্রমে পার্স করা যায়, যা মেমরি ব্যবহারের পরিমাণ কমিয়ে দেয় এবং পারফরম্যান্স উন্নত করে।
  3. ভ্যালিডেশন: JSONTokener JSON স্ট্রিংয়ের ফর্ম্যাট ভ্যালিডেশন করে এবং যদি কোনো ত্রুটি থাকে তবে তা চেক করে। এটি JSON ডেটার ত্রুটি শনাক্ত করতে সহায়ক।

সারাংশ

JSONTokener হলো একটি কার্যকরী ক্লাস যা JSON ডেটা টোকেনাইজ করতে এবং স্ট্রিং বা ইনপুট স্ট্রিম থেকে JSON অবজেক্টে রূপান্তর করতে ব্যবহৃত হয়। এটি JSON ডেটাকে পার্স করার জন্য একটি স্ট্রিমিং পদ্ধতি প্রদান করে, যা মেমরি ব্যবহারের পরিমাণ কমায় এবং বড় JSON ডেটা দ্রুত এবং কার্যকরীভাবে প্রসেস করতে সহায়তা করে।

Content added By

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

অর্গ.জেসন (Org.Json) লাইব্রেরি Java-তে JSON ডেটা প্রসেস করার জন্য একটি খুবই জনপ্রিয় টুল, এবং এর মধ্যে JSONTokener একটি গুরুত্বপূর্ণ ক্লাস যা JSON ডেটাকে প্যার্স করতে ব্যবহৃত হয়। এটি একটি স্ট্রিং বা ইনপুট স্ট্রীম থেকে JSON ডেটা পাঠ করে এবং পার্স করে JSONObject বা JSONArray অবজেক্টে রূপান্তরিত করে।

JSONTokener কি?

JSONTokener হলো একটি ক্লাস যা JSON স্ট্রিং বা ফাইল থেকে টোকেন পড়ে এবং সেই টোকেনগুলোকে JSON অবজেক্টে রূপান্তর করে। এটি মূলত JSON ডেটার সঠিক স্ট্রাকচার বুঝতে সাহায্য করে এবং JSON প্যার্সিং সহজ করে।

JSONTokener এর প্রধান ব্যবহার

  • স্ট্রিং থেকে JSON প্যার্স করা: JSON স্ট্রিংকে JSONObject বা JSONArray তে কনভার্ট করা।
  • ইনপুট ফাইল থেকে JSON প্যার্স করা: JSON ফাইলের ডেটা পার্স করে JSONObject বা JSONArray তে রূপান্তর করা।
  • টোকেন স্ট্রিমিং: এটি JSON স্ট্রিং বা ইনপুট স্ট্রীম থেকে একে একে টোকেন বের করে।

JSONTokener এর ব্যবহার: উদাহরণ সহ

উদাহরণ ১: JSONTokener ব্যবহার করে JSON স্ট্রিং প্যার্স করা

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

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

        // JSONTokener ব্যবহার করে JSON স্ট্রিং প্যার্স করা
        JSONTokener tokener = new JSONTokener(jsonString);
        JSONObject jsonObject = new JSONObject(tokener);

        // 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);
    }
}

কোড ব্যাখ্যা

  1. JSONTokener tokener = new JSONTokener(jsonString);
    • এটি একটি JSONTokener অবজেক্ট তৈরি করে, যা JSON স্ট্রিং থেকে টোকেন পড়তে সক্ষম।
  2. JSONObject jsonObject = new JSONObject(tokener);
    • JSONObject ব্যবহার করে JSONTokener থেকে JSON ডেটা প্যার্স করা হয়।
  3. getString() এবং getInt() মেথড
    • jsonObject.getString("name") এবং jsonObject.getInt("age") ব্যবহার করে JSON অবজেক্ট থেকে ডেটা এক্সট্র্যাক্ট করা হয়।

উদাহরণ ২: JSONTokener ব্যবহার করে JSON ফাইল প্যার্স করা

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

import java.io.FileReader;
import java.io.IOException;

public class JSONTokenerFromFileExample {
    public static void main(String[] args) throws IOException {
        // JSON ফাইলের পাথ
        FileReader fileReader = new FileReader("data.json");

        // JSONTokener ব্যবহার করে JSON ফাইল প্যার্স করা
        JSONTokener tokener = new JSONTokener(fileReader);
        JSONObject jsonObject = new JSONObject(tokener);

        // 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);

        // ফাইল রিসোর্স বন্ধ করা
        fileReader.close();
    }
}

কোড ব্যাখ্যা

  1. FileReader fileReader = new FileReader("data.json");
    • এটি data.json ফাইলটি ওপেন করে পঠনযোগ্য ফাইল স্ট্রীম তৈরি করে।
  2. JSONTokener tokener = new JSONTokener(fileReader);
    • JSONTokener ফাইল স্ট্রীম থেকে JSON ডেটা পড়তে সাহায্য করে।
  3. new JSONObject(tokener);
    • JSONTokener থেকে JSON ডেটা প্যার্স করে JSONObject তৈরি করা হয়।
  4. fileReader.close();
    • ফাইল রিসোর্স বন্ধ করার জন্য fileReader.close() ব্যবহার করা হয়েছে।

উদাহরণ ৩: JSONTokener ব্যবহার করে JSON অ্যারে প্যার্স করা

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

public class JSONTokenerJSONArrayExample {
    public static void main(String[] args) {
        // JSON অ্যারে
        String jsonArrayString = "[ \"apple\", \"banana\", \"cherry\" ]";

        // JSONTokener ব্যবহার করে JSON অ্যারে প্যার্স করা
        JSONTokener tokener = new JSONTokener(jsonArrayString);
        JSONArray jsonArray = new JSONArray(tokener);

        // JSONArray থেকে মান এক্সট্র্যাক্ট করা
        String item1 = jsonArray.getString(0);
        String item2 = jsonArray.getString(1);
        String item3 = jsonArray.getString(2);

        // ডেটা প্রদর্শন
        System.out.println("Item 1: " + item1);
        System.out.println("Item 2: " + item2);
        System.out.println("Item 3: " + item3);
    }
}

কোড ব্যাখ্যা

  1. JSONArray jsonArray = new JSONArray(tokener);
    • JSONTokener থেকে JSON অ্যারে প্যার্স করা হয় এবং একটি JSONArray তৈরি করা হয়।
  2. jsonArray.getString(index);
    • JSONArray থেকে নির্দিষ্ট ইনডেক্সের মান এক্সট্র্যাক্ট করা হয়।

সারাংশ

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

Content added By
Promotion

Are you sure to start over?

Loading...