title: How to copy bytes in JSONArray to Byte array
body: <p>I am getting image data in the form of buffer(bytes), but I want to convert it into a base64 string. The data is received inside a JSONArray, like so</p>
  
  <pre><code>JSONArray : `[53,57,51,47,53,57,51,55,50,98,98,54,53,51,54,97,102,101,53,101,102,54,57,54,53,54,53,51,102,98,53,99,98,98,99,51,98,48,52,57,56,52,52,101,54,48,50,99,56,55,101,54,53,97,51,102,56,49,56,57,56,98,102,56,49,57,97,57]`
  </code></pre>
  
  <p>For that I am copying the JSONArray into <code>"byte" array</code>, like so :</p>
  
  <pre><code>JSONArray bytearray_json = record.getJSONObject("image").getJSONArray("data");
  byte[] bytes = new byte[bytearray_json.length()];
  for (int i =0; i &lt; bytearray_json.length(); i++ ) {
      bytes[i] = (byte)bytearray_json.get(i);
  }
  String base_64 = Base64.encodeToString(bytes,Base64.DEFAULT);
  </code></pre>
  
  <p>But I get an exception : <code>Cannot cast Integer to byte</code>
  I cannot do <code>bytearray_json.get(i).toString().getBytes();</code> since it returns a <code>Byte Array</code>.</p>
  
  <p>How can I solve this?</p>