110,538
社区成员
发帖
与我相关
我的任务
分享
private void btn_ConvertAndSend_Click(object sender, EventArgs e)
{
//图片转成二进制流
MemoryStream ms = null;
try
{
if (rdo_Text.Checked)
{
byte[] byteImage = new Byte[ms.Length];
byteImage = ms.ToArray(); //发送byteImage
s.Send(byteImage);
}
else
{
Int64 JustTime = DateTime.Now.Ticks / 10000; //long相当于int64
//------------------------
ms = new MemoryStream();
mImage.Save(ms, ImageFormat.Bmp);
long msLength = ms.Length;
s.Send(BitConverter.GetBytes(msLength));
ms.Position = 0;
while (true)
{
byte[] bits = new byte[1024];
//int p =(int)ms.Position;
int r = ms.Read(bits,0, bits.Length);
if (r <= 0)
{
break; //如果从流中读取完毕,则break;
}
s.Send(bits, r, SocketFlags.None);
}
ms.Position = 0;
JustTime = DateTime.Now.Ticks / 10000 - JustTime;
tsl_ProcessTimer2.Text = JustTime.ToString();
}
}
catch (ArgumentNullException ex)
{
throw ex;
}
finally
{
ms.Close();
}
}