C#后台接java接口传输字节数组(byte[])
事情是这样的C#t代码之前接的WCF接口,后来那边统一改为java的接口,我是用的HttpClient从后台发请求调用的java接口,其他接口都很顺利,是的。。。。知道遇到一个需要传byte[]类型数据的问题,发现,如果java接口如果直接返回byte[],C#是可以接收到并转换为字节数组的,但是发现字节数据有问题,不能还原为对应的文件(ps:我这边是传的一个思维导图的文件 .xmind),之间查了各种资料,有的说C#和java的byte范围不同,需要转,试过了,失败;后来看到了有人说在java端用base64编码,然后C#端用base64解码即可解决。然后发现确实ok
好了,下面粘上代码
java编码
Encoder encoder= Base64.getEncoder();
String s= encoder.encodeToString("123345".getBytes());
C#解码
byte[] rArray = Convert.FromBase64String(resposns.data.ToString());
resposns.data.ToString()中是我接收到的java传过来的编过码的字节数组