কম্পিউটার

কীভাবে JSON বাইট অ্যারে এনকোড এবং ডিকোড করবেন

JSON-এ বাইনারি পাঠানোর সাধারণ উপায় হল base64 এনকোড করা। জাভা Base64 এনকোড এবং বাইট ডিকোড করার বিভিন্ন উপায় প্রদান করে[]। এর মধ্যে একটি হল DatatypeConverter।

ধরুন নীচে তালিকাভুক্ত একটি JSON অ্যারে আছে:

{
    "menu": {
        "id": "file",
        "value": "File",
        "popup": {
            "menuitem": [
                {"value": "New", "onclick": "CreateNewDoc()"},
                {"value": "Open", "onclick": "OpenDoc()"},
                {"value": "Close", "onclick": "CloseDoc()"}
            ]
        }
    }
}

JSON কে বেস64 হিসাবে এনকোড করুন

উপরের JSON এনকোড করতে, আমরা ব্যবহার করব

String base64Encoded = DatatypeConverter.printBase64Binary(jsonBytes);

সম্পর্কিত:

  • কিভাবে জাভাতে JSON পার্স করবেন
  • কিভাবে জাভা ম্যাপকে JSON-এ রূপান্তর করবেন
  • কিভাবে জাভা অবজেক্টকে JSON এ রূপান্তর করা যায়

ডিকোড বেস64 JSON

একটি base64 এনকোডেড JSON ডিকোড করতে, আমরা ব্যবহার করব

byte[] base64Decoded = DatatypeConverter.parseBase64Binary(base64Encoded);

উদাহরণ কোড:

import javax.xml.bind.DatatypeConverter;

public class JsonEncodeDecode {

    public static void main(String[] args) {
        String json = "{\"menu\": {\n" +
                "  \"id\": \"file\",\n" +
                "  \"value\": \"File\",\n" +
                "  \"popup\": {\n" +
                "    \"menuitem\": [\n" +
                "      {\"value\": \"New\", \"onclick\": \"CreateNewDoc()\"},\n" +
                "      {\"value\": \"Open\", \"onclick\": \"OpenDoc()\"},\n" +
                "      {\"value\": \"Close\", \"onclick\": \"CloseDoc()\"}\n" +
                "    ]\n" +
                "  }\n" +
                "}}";

        byte[] bytes = json.getBytes();

        String base64Encoded = DatatypeConverter.printBase64Binary(bytes);
        System.out.println("Encoded Json:\n");
        System.out.println(base64Encoded + "\n");

        byte[] base64Decoded = DatatypeConverter.parseBase64Binary(base64Encoded);
        System.out.println("Decoded Json:\n");
        System.out.println(new String(base64Decoded));
    }
}

এনকোড করা JSON-এর আউটপুট:

eyJtZW51IjogewogICJpZCI6ICJmaWxlIiwKICAidmFsdW
দ্রষ্টব্য:এনকোড করা JSON পরিচ্ছন্নতার জন্য কাটা হয়েছে, অন্যথায় এটি একটি খুব দীর্ঘ স্ট্রিং।

ডিকোড করা JSON এর আউটপুট:

{
    "menu": {
        "id": "file",
        "value": "File",
        "popup": {
            "menuitem": [
                {"value": "New", "onclick": "CreateNewDoc()"},
                {"value": "Open", "onclick": "OpenDoc()"},
                {"value": "Close", "onclick": "CloseDoc()"}
            ]
        }
    }
}

  1. অ্যান্ড্রয়েডে ভলি জেসন অ্যারে কীভাবে পড়বেন?

  2. অ্যান্ড্রয়েডে একটি JSON অ্যারে কীভাবে পুনরাবৃত্তি করবেন?

  3. কিভাবে জাভা ব্যবহার করে একটি JSON অ্যারে লিখবেন/তৈরি করবেন?

  4. কিভাবে জাভাতে JSON পার্স করবেন