C
chrisben
Hi,
I send out a byte array through socket and then try to convert the data
back. However, I run into some problems when I mix string with other datatypes
For example
sender array
byte[] data = new byte[32];
string name = "chris"
string nickName = "CBen"
MemoryStream stream = new MemoryStream(data, 0, 115);
BinaryWriter writer = new BinaryWriter(stream);
byte[] nm = System.Text.Encoding.UTF8.GetBytes(name);
byte[] nickName = System.Text.Encoding.UTF8.GetBytes(nickName);
writer.Write(bStk);
writer.Write(bTicker);
writer.Write(24);
writer.Write(23.1)
receiving side (this part does not work)
byte[] data
MemoryStream stream = new MemoryStream(data, 0, 32);
BinaryReader reader = new BinaryReader(stream);
byte[] a = reader.ReadBytes(8);
string name = System.Text.Encoding.UTF8.GetString(a);
intNum = reader.ReadInt32();
string ticker = System.Text.Encoding.UTF8.GetString(reader.ReadBytes(8));
Thanks for your time
Chris
PS. string size must be less than 8, but may vary.
I send out a byte array through socket and then try to convert the data
back. However, I run into some problems when I mix string with other datatypes
For example
sender array
byte[] data = new byte[32];
string name = "chris"
string nickName = "CBen"
MemoryStream stream = new MemoryStream(data, 0, 115);
BinaryWriter writer = new BinaryWriter(stream);
byte[] nm = System.Text.Encoding.UTF8.GetBytes(name);
byte[] nickName = System.Text.Encoding.UTF8.GetBytes(nickName);
writer.Write(bStk);
writer.Write(bTicker);
writer.Write(24);
writer.Write(23.1)
receiving side (this part does not work)
byte[] data
MemoryStream stream = new MemoryStream(data, 0, 32);
BinaryReader reader = new BinaryReader(stream);
byte[] a = reader.ReadBytes(8);
string name = System.Text.Encoding.UTF8.GetString(a);
intNum = reader.ReadInt32();
string ticker = System.Text.Encoding.UTF8.GetString(reader.ReadBytes(8));
Thanks for your time
Chris
PS. string size must be less than 8, but may vary.