কম্পিউটার টিউটোরিয়াল

JSON-lib API দিয়ে JSON অ্যারে থেকে অ্যারে কনভার্ট করা

JSONArray একটি ভ্যালু সিকোয়েন্স, এক্সটার্নাল টেক্সট হল স্কোয়ার ব্র্যাকেটে লিপटा কমা-সেপারেটেড স্ট্রিং, ইন্টার্নাল টেক্সট হল get() এবং opt() মেথড বিশিষ্ট অবজেক্ট। আমরা ইনডেক্স দিয়ে ভ্যালু অ্যাক্সেস করি। element() মেথড দিয়ে ভ্যালু অ্যাড বা রিপ্লেস করা যায়। অ্যারে হল একই টাইপের একাধিক ভ্যালু সংরক্ষণকারী অবজেক্ট। এটি প্রিমিটিভ টাইপ এবং অবজেক্ট রেফারেন্স দুটোই ধারণ করতে পারে। JSONArray ক্লাসের toArray() মেথড ব্যবহার করে JSON অ্যারে থেকে অ্যারে কনভার্ট করা যায়। এই মেথড Object[] রিটার্ন করে JSONArray-এর কন্টেন্টসহ।

সিনট্যাক্স

public Object[] toArray()

উদাহরণ

import java.util.Arrays;
import net.sf.json.JSONArray;

public class ConvertJSONArrayToArrayTest {
    public static void main(String[] args) {
        JSONArray jsonArray = new JSONArray()
            .element("Raja Ramesh")
            .element("115")
            .element("Tutorials Point")
            .element("Hyderabad")
            .element(new String[] {"Java", "Testing", "Python"});
        
        String jsonStr = jsonArray.toString(3); // প্রিটি প্রিন্ট JSON
        System.out.println("JSON:\n" + jsonStr);
        
        Object[] array = jsonArray.toArray();
        System.out.println("-------------------------------------------------------------------");
        System.out.println("Array:\n" + Arrays.toString(array));
    }
}

আউটপুট

JSON:
[ 
    "Raja Ramesh", 
    "115", 
    "Tutorials Point", 
    "Hyderabad", 
    [ 
        "Java", 
        "Testing", 
        "Python" 
    ] 
]
------------------------------------------------------------------------
Array:
[Raja Ramesh, 115, Tutorials Point, Hyderabad, ["Java","Testing","Python"]]

মূল নোট

  • toArray() রিটার্ন টাইপ Object[], প্রিমিটিভ অ্যারে পাওয়ার জন্য আলাদা হ্যান্ডলিং দরকার
  • নেস্টেড JSONArray অ্যারে হিসেবে থাকে (Object[]-এর ভিতরে Object[])
  • টাইপ-সেফ কনভারশনের জন্য জেনেরিক মেথড ব্যবহার করুন: toArray(new String[0]) (JSON-lib-এ সাপোর্ট নাও থাকতে পারে)

আধুনিক বিকল্প (Jackson)

ObjectMapper mapper = new ObjectMapper();
String[] arr = mapper.readValue(jsonStr, String[].class);
// অথবা
List<String> list = mapper.readValue(jsonStr, new TypeReference<List<String>>() {});
  1. জাভাতে লিস্ট কে JSON অ্যারে-এ রূপান্তর করুন

  2. জাভাতে JSON অ্যারে কীভাবে লিখবেন/তैयার করবেন?

  3. জাভাতে JSON অ্যারে কীভাবে পড়বেন/পার্স করবেন?

  4. জাভা Map কে JSON-এ কনভার্ট করা: Jackson, Gson এবং org.json সহ ধাপে ধাপে গাইড