原文地址:http://www.cnblogs.com/--Sam--/archive/2011/05/29/2061372.html
我这个不是一个很好的传输格式,希望可以得到各位的指点。
第一个字节代表:类型
第二个字节开始20字节代表:用户名
第21个字节开始20字节代表:密码
private void button1_Click(object sender, EventArgs e) |
static int userlength = 20; |
static int passlength = 20; |
byte[] buffer = new byte[1024]; |
byte[] username = Encoding.UTF8.GetBytes("Sam"); |
byte[] userpass = Encoding.UTF8.GetBytes("Password"); |
Array.Copy(username, 0, buffer, 1, username.Length); |
Array.Copy(userpass, 0, buffer, 1 + userlength, userpass.Length); |
private void Unpack(byte[] buffer) |
byte[] username = new byte[userlength]; |
byte[] userpass = new byte[passlength]; |
Array.Copy(buffer, 1, username, 0, userlength); |
Array.Copy(buffer, 1 + userlength, userpass, 0, passlength); |
string strName = Encoding.UTF8.GetString(username).TrimEnd('\0'); |
string strPass = Encoding.UTF8.GetString(userpass).TrimEnd('\0'); |
string strInfo = string.Format("类型: {0} 用户名:{1} 密码:{2}", type.ToString(), strName, strPass); |
MessageBox.Show(strInfo, "解包完成"); |
最后效果:

Demo:https://files.cnblogs.com/--Sam--/NetDataTranFormat.rar