-
public static void BlockCopy(Array src, int srcOffset, Array dst, int dstOffset, int count);
- Buffer.BlockCopy 参数
- src 初始的数组
- srcoffset 初始数组的偏移量 从0开始,0代表数组[0]
- dst 接受的数组
- dstoffset 接受数组的偏移量 从0开始,表示从数组的第几位开始覆盖
- cout 表示 覆盖的长度
- 实例
using (FileStream fs = new FileStream(txt_SelectFile.Text, FileMode.Open)) { string filename = Path.GetFileName(txt_SelectFile.Text); string StrMsg = "发送文件为:" + filename; byte[] arrMsg = Encoding.UTF8.GetBytes(StrMsg); byte[] arrSend = new byte[arrMsg.Length + 1]; arrSend[0] = 0; Buffer.BlockCopy(arrMsg, 0, arrSend, 1, arrMsg.Length); sockClient.Send(arrSend); byte[] arrfileSend = new byte[1024 * 1024 * 2]; int length = fs.Read(arrfileSend, 0, arrfileSend.Length); byte[] arrfile = new byte[length + 1]; arrfile[0] = 1; Buffer.BlockCopy(arrfileSend, 0, arrfile, 1, length); sockClient.Send(arrfile); }