Base64编码解码过程中中文乱码问题

来源:互联网 发布:js改变radio值 编辑:程序博客网 时间:2024/05/23 15:46

在利用spring定时器自动启动函数进行的过程中,当中获取到时被Base64编码过后的数据用:

//respData为Base64编码过后的数据,deqdata为解码过后的数据String deqdata=new String(Base64.decodeBase64(respData));

来解码时会发生中文乱码问题,而如果直接用把数据提取出来放进测试函数中进行测试时,同样的解码函数,解码得到的明文就不会乱码。
这时候只要把解码函数改为:

//respData为Base64编码过后的数据,deqdata为解码过后的数据String deqdata=new String(Base64.decodeBase64(respData),"utf-8");

即可。
至于原因,本人认为可能是利用外部传回的数据再解码的时候其默认的解码格式跟自己在本地直接测试时默认的解码格式不一致而导致的乱码问题。