日期:2014-05-17  浏览次数:20997 次

求解!TcpClient和TcpListener通讯,客户端如何获取服务端的返回值。
本帖最后由 fihuang 于 2013-11-23 21:09:27 编辑
求解!TcpClient和TcpListener通讯,客户端如何获取服务端的返回值。

下面是代码,请大家答疑解惑。
先谢过大家!

服务端

private Thread _Thread;
private TcpListener _TcpListener;

_TcpListener = new TcpListener(new IPEndPoint(IPAddress.Any, port));
_TcpListener.Start();

_Thread = new Thread(new ThreadStart(StartListen));
_Thread.Start();

private void StartListen()
{
    while(true)
    {
        TcpClient client = _TcpListener.AcceptTcpClient();
        NetworkStream stream = client.GetStream();
        StreamReader sReader = new StreamReader(stream);
        string content = sReader.ReadToEnd();

        string responseContent = "hello";
        //执行逻辑操作

        byte[] bytes =System.Text.Encoding.UTF8.GetBytes(responseContent);
        stream.Write(bytes, 0, bytes.Length);
        stream.Close();
        stream.Dispose();
        client.Close();
   }
}



客户端

TcpClient tcpClient = new TcpClient(ip, port);
NetworkStream networkStream = tcpClient.GetStream();
byte[] bytes = System.Text.Encoding.UTF8.GetBytes("请求的指令");
networkStream.Write(bytes, 0, bytes.Length);

//这里如何获取服务端的返回值

networkStream.Close();
tcpClient.Close();

------解决方案--------------------
同求,等大神回复