首页新闻找找看学习计划

base64 在java中和c#中的问题。。求解??

0
悬赏园豆:5 [已解决问题] 解决于 2015-11-05 11:35

我的想法:

一张图片,在java中转成byte[],然后转为base64字符串然后通过web api传一个json到

c#中。把base64解码为byte[]。然后生成图片。。结果,,呵呵了。。。。。

代码如下   

java代码:

//对字节数组Base64编码

 //data是byte[]
        BASE64Encoder encoder = new BASE64Encoder();
        return encoder.encode(data);//返回Base64编码过的字节数组字符串

c#代码

//str为java转好的base64字符串

 byte[] bt = Convert.FromBase64String(str);

可是无法生成图片了。。

求解呀。。。。。。

导入这个

commons-codec-1.8.jar

 java后台方法

InputStream in = null;
        byte[] data = null;
        //读取图片字节数组
        try 
        {
            in = new FileInputStream(imgFilePath);        
            data = new byte[in.available()];
            in.read(data);
            in.close();
        } 
        catch (IOException e) 
        {
            e.printStackTrace();
        }
        
        //对字节数组Base64编码
        return new String(Base64.encodeBase64(data));//返回Base64编码过的字节数组字符串
用这个方法转的。就可以了。。。
小小高的主页 小小高 | 小虾三级 | 园豆:533
提问于:2015-11-04 17:27
< >
分享
最佳答案
0
<td>
                        <img src="data:@row.MimeType;base64,@Convert.ToBase64String(@row.Content)"
                         style="width:320px;height:240px;" />
                    </td>

MVC吗? 直接前台转就可以。

收获园豆:1
绯村剑心丶 | 初学一级 |园豆:195 | 2015-11-05 10:01

这是java 与c# json传输的问题。。。

小小高 | 园豆:533 (小虾三级) | 2015-11-05 10:58

@小小高: 好吧不懂这个。

绯村剑心丶 | 园豆:195 (初学一级) | 2015-11-05 11:03
其他回答(4)
0

生成之后图片打不开吗?我的是可以的,你可能丢失字节了

收获园豆:1
安卓粉丝 | 园豆:99 (初学一级) | 2015-11-04 17:32

你的代码,也是c#和java交互的么?

支持(0) 反对(0) 小小高 | 园豆:533 (小虾三级) | 2015-11-04 17:33

@小小高: 是的

支持(0) 反对(0) 安卓粉丝 | 园豆:99 (初学一级) | 2015-11-05 00:30

@安卓粉丝: 求java端,c#端 转换base64的代码。。。

支持(0) 反对(1) 小小高 | 园豆:533 (小虾三级) | 2015-11-05 09:40
0

字节序?

jello chen | 园豆:7091 (大侠五级) | 2015-11-04 21:53
0

为什么要先转为byte[] 再转为base64?直接转成base64,接收的时候再解码不行吗? 

收获园豆:3
逗比猴子 | 园豆:7 (初学一级) | 2015-11-05 08:59

求代码。。。。

直接文件流转base64

支持(0) 反对(0) 小小高 | 园豆:533 (小虾三级) | 2015-11-05 09:39
-1
InputStream in = null;
        byte[] data = null;
        //读取图片字节数组
        try 
        {
            in = new FileInputStream(imgFilePath);        
            data = new byte[in.available()];
            in.read(data);
            in.close();
        } 
        catch (IOException e) 
        {
            e.printStackTrace();
        }
        
        //对字节数组Base64编码
        return new String(Base64.encodeBase64(data));//返回Base64编码过的字节数组字符串
用这个方法转的。就可以了。。。
 
 
小小高 | 园豆:533 (小虾三级) | 2015-11-05 11:20
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册