日期:2014-05-17 浏览次数:20812 次
public static byte[] GetBytesByStr(string str) {
byte[] dataBytes = Encoding.UTF8.GetBytes(str);
int length = dataBytes.Length;
byte[] extendBytes;
byte[] headBytes;
if (length < 126) {
extendBytes = new byte[0];
headBytes = GetHeadBytes(true, false, false, false, OpCode.Text, false, length);
} else if (length < 65536) {
extendBytes = new byte[2];
headBytes = GetHeadBytes(true, false, false, false, OpCode.Text, false, 126);
extendBytes[0] = (byte)(length / 256);
extendBytes[1] = (byte)(length % 256);
} else {
extendBytes = new byte[8];
headBytes = GetHeadBytes(true, false, false, false, OpCode.Text, false, 127);
int left = length;
int unit = 256;