码迷,mamicode.com
首页 > Windows程序 > 详细

C#TCP,网络流通讯实例

时间:2017-04-24 15:45:03      阅读:282      评论:0      收藏:0      [点我收藏+]

标签:stat   buffers   ipad   linq   port   client   space   remote   catch   

服务端:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading.Tasks;

namespace ceshi1
{
class Program
{
static void Main(string[] args)
{
string sendString = null;//要发送的字符串
byte[] sendData = null;//要发送的字节数组
TcpClient client = null;//TcpClient实例
NetworkStream stream = null;//网络流
IPAddress remoteIP = IPAddress.Parse("127.0.0.1");//远程主机IP
int remotePort = 11000;//远程主机端口
while (true)//死循环
{
sendString = Console.ReadLine();//获取要发送的字符串
sendData = Encoding.Default.GetBytes(sendString);//获取要发送的字节数组
client = new TcpClient();//实例化TcpClient
try
{
client.Connect(remoteIP, remotePort);//连接远程主机
}
catch (System.Exception ex)
{
Console.WriteLine("连接超时,服务器没有响应!");//连接失败
Console.ReadKey();
return;
}
stream = client.GetStream();//获取网络流
stream.Write(sendData, 0, sendData.Length);//将数据写入网络流
stream.Close();//关闭网络流
client.Close();//关闭客户端
}
}
}
}

客户接收端:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading.Tasks;

namespace ceshi
{
class Program
{
static void Main(string[] args)
{
TcpClient client = null;
NetworkStream stream = null;
byte[] buffer = null;
string receiveString = null;
IPAddress localIP = IPAddress.Parse("127.0.0.1");
int localPort = 11000;
TcpListener listener = new TcpListener(localIP, localPort);//用本地IP和端口实例化Listener
listener.Start();//开始监听
while (true)
{
client = listener.AcceptTcpClient();//接受一个Client
buffer = new byte[client.ReceiveBufferSize];
stream = client.GetStream();//获取网络流
stream.Read(buffer, 0, buffer.Length);//读取网络流中的数据
stream.Close();//关闭流
client.Close();//关闭Client
receiveString = Encoding.Default.GetString(buffer).Trim(‘\0‘);//转换成字符串
Console.WriteLine(receiveString);
}
}
}
}

技术分享

C#TCP,网络流通讯实例

标签:stat   buffers   ipad   linq   port   client   space   remote   catch   

原文地址:http://www.cnblogs.com/wuxiaochao/p/6757100.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!