首页 新闻 会员 周边 捐助

c#如何将一个图片传给android程序?

0
悬赏园豆:40 [已解决问题] 解决于 2012-07-25 13:54
 byte[] result;
            using (MemoryStream memoryStrem = new MemoryStream())
            {
                JpegBitmapEncoder encoder = new JpegBitmapEncoder();
                System.Drawing.Bitmap image = new System.Drawing.Bitmap("skin.jpg");

                image.Save(memoryStrem, ImageFormat.Bmp);
                result = memoryStrem.ToArray();
            }


            TcpListener tcpListener;
            TcpClient tcpClient;
            NetworkStream networkStream;
            tcpListener = new TcpListener(IPAddress.Any, 5554);

            IPEndPoint clientPoint;

            while (true)
            {
                try
                {
                    tcpListener.Start();
                }
                catch (Exception exp)
                {
                    MessageBox.Show(exp.Message);
                    return;
                }

                try
                {
                    tcpClient = tcpListener.AcceptTcpClient();
                }
                catch (Exception exp)
                {
                    MessageBox.Show(exp.Message);
                    return;
                }
                clientPoint = (IPEndPoint)(tcpClient.Client.RemoteEndPoint);

                networkStream = tcpClient.GetStream();

                networkStream.Write(result, 0, result.Length);
                networkStream.Flush();
                networkStream.Close();
                tcpClient.Close();
            }

c#端的程序如上面所示,具体的思路就是将一副图片按照一定的格式编码后得到byts的数组,

问题是在android端如何解码,转换成androi下的bitmap实例呢?希望那位大侠提供实例代码!!

问题补充:

问题结局了,在客户端得到byte[]之后用一下语句解码

Bitmap bitmap = BitmapFactory.decodeByteArray(buffer, 0, count);

开始一直出错原来是buffer设置的太小了.感谢各位的帮忙.

xiaxia—博客园的主页 xiaxia—博客园 | 初学一级 | 园豆:128
提问于:2012-07-25 13:08
< >
分享
最佳答案
1

客户端拿到byte[]后,再找个jpeg的库加载就行了。

收获园豆:40
Launcher | 高人七级 |园豆:45050 | 2012-07-25 13:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册