Is it possible to convert an image to a string in JSON format?

1

I wonder if it is possible to convert an image to a string in JSON format. If so, could you explain to me how? (if possible with example codes). I need to do this to send those images to a webservice which will be responsible for saving it to the database.

    
asked by anonymous 03.08.2017 / 20:07

1 answer

5

Leaving the answer here for anyone who has the same question I had.

    /*Primeiro, importa-se a imagem e a converte para um array de bytes*/
    BufferedImage imagem = ImageIO.read(new File("sua_imagem.jpg"));
    ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
    ImageIO.write(imagem, "jpg", baos);
    arrayBytes = baos.toByteArray();

    /*Depois usamos a biblioteca Base64 para converter o array de bytes em uma string*/
    String encoded = Base64.getEncoder().encodeToString(arrayBytes);

    /*Por fim, utilizamos a biblioteca JSON Simple para criar uma string no formato JSON utilizando os dados do encoded que conseguimos ao converter o array de bytes com o Base64*/

    JSONObject jo = new JSONObject();
    jo.put("imagem", encoded);
    String jsonImagem = jo.toJSONString();
    
03.08.2017 / 23:46