Base64编码和解码,乱码

1.编码

1.1. 编码内容截图

1.2. 进行编码代码

import java.util.Base64; 导入java util包


 public static void main(String[] args) {
        String content = "这是需要编码的一些内容1";
        //Base64编码
                Base64.Encoder encoder = Base64.getEncoder();
        //根据指定字符编码对数据进行Base64编码
        try {
            String encodeContent = encoder.encodeToString(content.getBytes("UTF-8"));
            System.out.println("Base64编码后的内容为:"+encodeContent);
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }

1.3. 输出编码结果

2.解码

2.1.解码内容截图

采用上面1.加密过的内容进行解码

2.2.解码代码

 public static void main(String[] args) {
        String b="6L+Z5piv6ZyA6KaB57yW56CB55qE5LiA5Lqb5YaF5a65MQ==";
        try {
            Base64.Decoder decoder = Base64.getDecoder();
            byte[] bytes = decoder.decode(b);
            String text = new String(bytes,"UTF-8");
            System.out.println("这是解码之后的内容:"+text);

        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }

2.3. 输出解码结果

3.编码乱码

若是进行加密的字符编码为UTF-8,而解码的字符编码为GBK,则将会发生乱码

如:

输出结果:

所以在进行编码解码的时候采用相同的字符编码,避免出现中文乱码

发布了115 篇原创文章 · 获赞 58 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/luChenH/article/details/101058615