Base64 字符串到 java 中的 byte[]



我正在尝试将base64字符串转换为字节数组,但它抛出以下错误

java.lang.IllegalArgumentException: Illegal base64 字符 3a

我尝试了以下选项 userimage 是 base64 字符串

byte[] img1 = org.apache.commons.codec.binary.Base64.decodeBase64(userimage);`
/* byte[] decodedString = Base64.getDecoder().decode(encodedString.getBytes(UTF_8));*/
/* byte[] byteimage =Base64.getDecoder().decode( userimage );*/
/* byte[] byteimage =  Base64.getMimeDecoder().decode(userimage);*/`
您可以使用

java.util.Base64包将字符串解码为byte[]。下面是我用于编码和解码的代码。

对于 Java 8

import java.io.UnsupportedEncodingException;
import java.util.Base64;
public class Example {
    public static void main(String[] args) {
        try {
            byte[] name = Base64.getEncoder().encode("hello World".getBytes());
            byte[] decodedString = Base64.getDecoder().decode(new String(name).getBytes("UTF-8"));
            System.out.println(new String(decodedString));
        } catch (UnsupportedEncodingException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

对于 Java 6 :

import java.io.UnsupportedEncodingException;
import org.apache.commons.codec.binary.Base64;
public class Main {
    public static void main(String[] args) {
        try {
            byte[] name = Base64.encodeBase64("hello World".getBytes());
            byte[] decodedString = Base64.decodeBase64(new String(name).getBytes("UTF-8"));
            System.out.println(new String(decodedString));
        } catch (UnsupportedEncodingException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

相关内容

  • 没有找到相关文章

最新更新