zoukankan      html  css  js  c++  java
  • 笔记-TCPCLIENT

                    byte[] myReadBuffer = new byte[1024];
    
            private void ReceiveMessage()
            {
                try
                {
                    tcpClient = new System.Net.Sockets.TcpClient("192.168.1.3", 8888);//创建TcpClient对象实例 
    
                }
                catch (Exception le)
                {
                }
                netStream = tcpClient.GetStream();//得到网络流
                if (netStream.CanWrite)
                {
    
                    byte[] myWriteBuffer = Encoding.ASCII.GetBytes("Are you receiving this message?");
                    netStream.BeginWrite(myWriteBuffer, 0, myWriteBuffer.Length,
                                                                 new AsyncCallback(myWriteCallBack),
                                                                 netStream);
                    allDone.WaitOne();
                }
                else
                {
                    Console.WriteLine("Sorry.  You cannot write to this NetworkStream.");
                }
                if (netStream.CanRead)
                {
                    netStream.BeginRead(myReadBuffer, 0, myReadBuffer.Length,myReadCallBack,netStream);
    
                    allDone.WaitOne();
                }
                else
                {
                    Console.WriteLine("Sorry.  You cannot read from this NetworkStream.");
                }
                
            }
            public void myWriteCallBack(IAsyncResult ar)
            {
                NetworkStream myNetworkStream = (NetworkStream)ar.AsyncState;
                myNetworkStream.EndWrite(ar);
                allDone.Set();
            }
            public void myReadCallBack(IAsyncResult ar)
            {
                StringBuilder myCompleteMessage = new StringBuilder();
                NetworkStream myNetworkStream = (NetworkStream)ar.AsyncState;
                int numberOfBytesRead;
                numberOfBytesRead = myNetworkStream.EndRead(ar);
                string str = Encoding.ASCII.GetString(myReadBuffer, 0, numberOfBytesRead);
                myCompleteMessage.AppendFormat("{0}", str);
                // message received may be larger than buffer size so loop through until you have it all.
                while (myNetworkStream.DataAvailable)
                {
                    myNetworkStream.BeginRead(myReadBuffer, 0, myReadBuffer.Length,new AsyncCallback(myReadCallBack), myNetworkStream);
                    //
                }
    
                // Print out the received message to the console.
                TextBox2.Text = myCompleteMessage.ToString();
                allDone.Set();
            }
  • 相关阅读:
    使用InstelliJ IDEA创建Web应用程序
    别了WindowsXP
    在MyEclipse中搭建Spring MVC开发环境
    iPhone中国移动收不到彩信,联通不用设置都可以,具体设置方法:
    WebLogic 服务器配置
    c# 第五课 string
    c# 第五课 regex
    c# 第四课 Arrays
    c# 第四课 interfaces
    c# 第五课 async await
  • 原文地址:https://www.cnblogs.com/timeObjserver/p/7932167.html
Copyright © 2011-2022 走看看