首页 新闻 搜索 专区 学院

在Java中使用commons.codec.binary.Base64 编码的字符串,在c#中应该如何解?在验签的时候用到。

0
悬赏园豆:100 [待解决问题]

Java相关的包:org.apache.commons.codec.binary.Base64

这个包生成的base64串,在c#中解出来是乱码。

无名扫地僧的主页 无名扫地僧 | 初学一级 | 园豆:8
提问于:2020-12-10 13:40
< >
分享
所有回答(2)
0

string bae64Str = "xxxxxx";
byte[] bae64 = Convert.FromBase64String(bae64Str);

string content = System.Text.Encoding.Default.GetString(bae64);
string content = System.Text.Encoding.UTF8.GetString(bae64);
string content = System.Text.Encoding.ASCII.GetString(bae64);

你试一下你的字符串使用的什么编码

diudiu1 | 园豆:610 (小虾三级) | 2020-12-10 14:48
0

Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。可查看RFC2045~RFC2049,上面有MIME的详细规范。

Base64 是一种规范,理论上与语言无关。

在Java中使用commons.codec.binary.Base64编码一个简单的字符串,拿到其byte数组
使用C#写个程序,解码该byte数组,多试几次,注意指定编码格式(建议统一为:UTF-8)

大志若愚 | 园豆:2082 (老鸟四级) | 2020-12-11 10:39
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册