JSON లో బైనరీని పంపే సాధారణ మార్గం బేస్ 64 ఎన్కోడ్. బేస్ 64 ఎన్కోడ్ చేయడానికి మరియు బైట్ డీకోడ్ చేయడానికి జావా వివిధ మార్గాలను అందిస్తుంది []. వీటిలో ఒకటి డాటాటైప్కాన్వర్టర్.
క్రింద జాబితా చేయబడిన విధంగా మనకు JSON శ్రేణి ఉందని అనుకుందాం:
{
'menu': {
'id': 'file',
'value': 'File',
'popup': {
'menuitem': [
{'value': 'New', 'onclick': 'CreateNewDoc()'},
{'value': 'Open', 'onclick': 'OpenDoc()'},
{'value': 'Close', 'onclick': 'CloseDoc()'}
]
}
} }
పై JSON ను ఎన్కోడ్ చేయడానికి, మేము ఉపయోగిస్తాము
String base64Encoded = DatatypeConverter.printBase64Binary(jsonBytes);
సంబంధిత:
బేస్ 64 ఎన్కోడ్ చేసిన JSON ను డీకోడ్ చేయడానికి, మేము ఉపయోగిస్తాము
byte[] base64Decoded = DatatypeConverter.parseBase64Binary(base64Encoded);
ఉదాహరణ కోడ్:
import javax.xml.bind.DatatypeConverter; public class JsonEncodeDecode {
public static void main(String[] args) {
String json = '{'menu': {
' +
' 'id': 'file',
' +
' 'value': 'File',
' +
' 'popup': {
' +
' 'menuitem': [
' +
'
{'value': 'New', 'onclick': 'CreateNewDoc()'},
' +
'
{'value': 'Open', 'onclick': 'OpenDoc()'},
' +
'
{'value': 'Close', 'onclick': 'CloseDoc()'}
' +
' ]
' +
' }
' +
'}}';
byte[] bytes = json.getBytes();
String base64Encoded = DatatypeConverter.printBase64Binary(bytes);
System.out.println('Encoded Json:
');
System.out.println(base64Encoded + '
');
byte[] base64Decoded = DatatypeConverter.parseBase64Binary(base64Encoded);
System.out.println('Decoded Json:
');
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()'}
]
}
} }