Decode Base64 data in Java

前端 未结 20 1452
时光说笑
时光说笑 2020-11-21 06:04

I have an image that is Base64 encoded. What is the best way to decode that in Java? Hopefully using only the libraries included with Sun Java 6.

20条回答
  •  小鲜肉
    小鲜肉 (楼主)
    2020-11-21 06:47

    As of Java 8, there is an officially supported API for Base64 encoding and decoding. In time this will probably become the default choice.

    The API includes the class java.util.Base64 and its nested classes. It supports three different flavors: basic, URL safe, and MIME.

    Sample code using the "basic" encoding:

    import java.util.Base64;
    
    byte[] bytes = "Hello, World!".getBytes("UTF-8");
    String encoded = Base64.getEncoder().encodeToString(bytes);
    byte[] decoded = Base64.getDecoder().decode(encoded);
    

    The documentation for java.util.Base64 includes several more methods for configuring encoders and decoders, and for using different classes as inputs and outputs (byte arrays, strings, ByteBuffers, java.io streams).

提交回复
热议问题