这就是我想要做的。我从传入的套接字程序获取字节数据。默认情况下,传入并被附加到我的字符串的字节将是1500字节,因为这是我为字节数组定义的大小。我的问题是,我想知道如何传递部分字节数组而不是整个1500字节。指定字节数量移到C中的字符串#
IPAddress localAddr = IPAddress.Parse(args[0]);
System.Console.WriteLine("The local IP is {0}", localAddr);
Int32 port = int.Parse(args[1]);
System.Console.WriteLine("The port is {0}", port);
TcpListener myListener = new TcpListener(localAddr, port);
byte[] bytes = new byte[1500];
string sem = "";
do
{
int flag = 0;
int rec = 1;
Console.Write("Waiting");
myListener.Start();
Socket mySocket = myListener.AcceptSocket();
// receiving the hl7 message
StringBuilder sbb = new StringBuilder();
do{
// bytes = null;
rec = mySocket.Receive(bytes,SocketFlags.None);
// rec = mySocket.Receive(bytes);
Console.WriteLine("rec = {0} ",rec);
for (int i=0; i<bytes.Length; i++)
{
if (bytes[i]==0x1C)
{
flag = 1;
}
}
sbb.Append(Encoding.ASCII.GetString(bytes));
}while (flag == 0);
什么语言?请适当标记。 – 2012-03-01 18:12:11
对不起......标题已更改。 – 2012-03-01 18:21:36
我猜sbb是一个StringBuilder,不是一个字符串,对吗?无论如何,你的问题并没有太多意义 - 你为什么要将一个空字节数组追加到字符串构建器? – 2012-03-01 18:27:34