Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

Java Base64 के साथ JSON बाइट एरे को एन्कोड और डिकोड करना - एक व्यावहारिक गाइड

JSON में बाइनरी भेजने का सामान्य तरीका इसे base64 एन्कोड करना है। Java बाइट[] को Base64 एन्कोड और डिकोड करने के विभिन्न तरीके प्रदान करता है। उनमें से एक है DatatypeConverter।

मान लीजिए हमारे पास नीचे सूचीबद्ध एक JSON Array है:

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

JSON को Base64 के रूप में एन्कोड करें

उपरोक्त JSON को एन्कोड करने के लिए, हम उपयोग करेंगे

String base64Encoded = DatatypeConverter.printBase64Binary(jsonBytes);
  • Java में JSON कैसे पार्स करें
  • Java Map को JSON में कैसे बदलें
  • Java Object को JSON में कैसे बदलें

Base64 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. एंड्रॉइड में वॉली JSON ऐरे कैसे पढ़ें एंड्रॉइड में वॉली JSON ऐरे कैसे पढ़ें

    Volley से JSON ऐरे पार्सिंग का बुनियादी उदाहरण सरल Volley रिक्वेस्ट से JSON ऐरे प्राप्त करके प्रत्येक ऑब्जेक्ट को पढ़ना। चरण 1-2: प्रोजेक्ट और लेआउट मानक सेटअप। चरण 3: MainActivity.java package com.example.myapplication; import android.os.Build; import android.os.Bundle; import android.support.an

  1. एंड्रॉइड में JSON एरे को कैसे इटरेट करें एंड्रॉइड में JSON एरे को कैसे इटरेट करें

    org.json लाइब्रेरी का उपयोग करके JSON एरे पार्स करना और इटरेट करना एंड्रॉइड में बिल्ट-इन org.json पैकेज (JSONArray, JSONObject) का उपयोग करके JSON डेटा पार्स किया जा सकता है। यह उदाहरण एक JSON स्ट्रिंग से एरे निकालकर उसे लूप के माध्यम से प्रोसेस करना दिखाता है। चरण 1: नया प्रोजेक्ट बनाएं Android St

  1. Java का उपयोग करके JSON ऐरे कैसे लिखें/बनाएं? Java का उपयोग करके JSON ऐरे कैसे लिखें/बनाएं?

    एक JSON ऐरे मानों का एक क्रमबद्ध संग्रह है जो वर्गाकार कोष्ठकों में संलग्न होता है यानी यह ‘[’ से शुरू होता है और ‘]’ पर समाप्त होता है। ऐरे में मान ‘,’ (कॉमा) से अलग किए जाते हैं। नमूना JSON ऐरे { books: [ Java, JavaFX, Hbase, Cassandra, WebGL, JOGL] } js