C#实现TCP/IP连接方式,向指定机器指定端口发送/接收程序(附实现代码)
连线成功(代码如下):
try
{
TcpClient tcpClient = new TcpClient(sHostName,nPortNo
nsStream = tcpClient.GetStream();//通过申请,并获取传送数据的网络基础数据流
swWriter = new StreamWriter(nsStream);//使用获取的网络基础数据流来初始化StreamWriter实例
srRead = new StreamReader(nsStream);//以得到的网络基础数据流来初始化StreamReader实例
btnConnect.Enabled = false ;
btnSend.Enabled = true ;
tcpConnect = true ;
sbStatus.Text = "已经连接! " ;
iSeqNo = 1;
}
catch
{
MessageBox.Show ( "无法和远程主机端口建立连接! " , "错误提示! " ) ;
return ;
}
发送接收代码(发送成功,接收不了)
swWriter.WriteLine(edtInfo.Text);//刷新当前数据流中的数据
swWriter.Flush();
sbStatus.Text = "发送成功,已经连接! ";
Thread.Sleep(300);
string sMessage = srRead.ReadLine();//从网络基础数据流中读取一行数据
string sTime = DateTime.Now.ToShortTimeString ( ) ; //获取接收数据时的时间
lbReceive.Items.Add ( sTime + " " + sMessage ) ;
sbStatus.Text = "接收成功,已经连接! ";
发送成功,接收不了!
请高手给与指教!
------解决方案--------------------是否为对方发送的数据中没有换行符?用srRead.Read();替换srRead.ReadLine();试试!