有个bitmap的对象,我用以下方法传输到服务器,代码本来是传输string对象用的,我照着改了下,用来传输位图,
不知道.行不行?
private void SendString(Bitmap dumpBitmap) //重载
{ byte[] bytesData = System.Text.Encoding.UTF8.GetBytes(dumpBitmap + "\r\n");
networkStream.BeginWrite(bytesData, 0, bytesData.Length, new AsyncCallback(SendCallback), networkStream);
networkStream.Flush();
}在服务器接收方面:
我用了以下函数接收,估计是不行的,所以请求大家帮忙...
System.Text.Encoding.UTF8.GetString()
这些代码都是传输string对象用的,
我直接就用来传输位图,
不知道要该些什么,,
本人初学,望指教,谢谢...
new BinaryFormatter().Serialize(ms, image1);
byte[] aBytes = ms.ToArray();
ms = new MemoryStream(aBytes);
Image image2 = (Image)new BinaryFormatter().Deserialize(ms);System.IO.MemoryStream ms2 = new MemoryStream();
image2.Save(ms2, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] bBytes = ms.ToArray();
ms.Close();
{
MemoryStream ms = new MemoryStream();
bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp);
byte[] buf = ms.ToArray();
ms.Close();
ms.Dispose(); return buf;
}
Bitmap getBmp(byte[] buf)//从byte[]获取bmp
{
MemoryStream ms = new MemoryStream(buf);
Bitmap temp = new Bitmap(ms);
Bitmap bmp = new Bitmap(temp);
ms.Close();
ms.Dispose();
return bmp;
}