C# 如何使用java从字节数组中创建位图图像?
我有一个c#tcp服务器,我向我的android客户端发送一个图像字节数组。但我没有成功地将数组转换为位图C# 如何使用java从字节数组中创建位图图像?,c#,android,tcp,C#,Android,Tcp,我有一个c#tcp服务器,我向我的android客户端发送一个图像字节数组。但我没有成功地将数组转换为位图 This is my c# code: new Thread(() =>{ //İmage converter ImageConverter imConv = new ImageConverter(); //memory streaö
This is my c# code:
new Thread(() =>{
//İmage converter
ImageConverter imConv = new ImageConverter();
//memory streaö
MemoryStream ms = new MemoryStream();
//bitmap
Bitmap bitmap = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height, PixelFormat.Format16bppRgb555);
Graphics g = Graphics.FromImage(bitmap);
g.CopyFromScreen(0, 0, 0, 0, bitmap.Size);
Cursors.Default.Draw(g, new Rectangle(new Point(Cursor.Position.X, Cursor.Position.Y), new Size(Cursors.Default.Size.Width, Cursors.Default.Size.Height)));
bitmap.Save(ms, ImageFormat.Png);
Image img = Image.FromStream(ms);
byte[] imgArry = (byte[])imConv.ConvertTo(img,typeof(byte[]));
tcpManager.SendTo(socket,imgArry);
bitmap.Dispose();
ms.Close();
ms.Dispose();
Thread.Sleep(41);
}).Start();
这是我的android客户端代码,我成功地得到了字节数组,但是函数返回了一个空位图
@Override
public void OnReceived(byte[] byteData) {
try{
final Bitmap bitmap = BitmapFactory.decodeByteArray(byteData, 0, byteData.length);
runOnUiThread(new Runnable() {
@Override
public void run() {
screenView.setImageBitmap(bitmap);
}
});
}catch (Exception ex){
}
}
首先让我们说8字节的
字节数据是什么?它们对它所说的人来说是什么——119、80、78、71、13、10、26、10等等。。。。。我的错在哪里?我怎样才能解决我的问题。我想我的c#server有个问题。你有我的解决方案吗?png从89 50 4E 47 0D 0A 1A 0A开始-你的数据是77,50,4E,47,0D,0A,1A,0A没有图像转换器如何将我的图像转换为c#中的png字节数组?