当前位置: 编程技术>.net/c#/asp.net
c# socket网络编程接收发送数据示例代码
来源: 互联网 发布时间:2014-10-25
本文导语: 代码分2块,server端: 代码如下:class Program { static void Main(string[] args) { TcpListener lsner = new TcpListener(9000); lsner.Start(); Console.WriteLine("started in port: 9000"); ...
代码分2块,server端:
代码如下:
class Program
{
static void Main(string[] args)
{
TcpListener lsner = new TcpListener(9000);
lsner.Start();
Console.WriteLine("started in port: 9000");
while (true)
{
TcpClient client=lsner.AcceptTcpClient();
Console.WriteLine("new client received. hashcode: {0}", client.GetHashCode());
ThreadPool.QueueUserWorkItem(new WaitCallback(ProcessTcpClient), client);
}
Console.ReadKey();
}
private static void ProcessTcpClient(object state)
{
TcpClient client=state as TcpClient;
if(client==null)
Console.WriteLine("client is null");
NetworkStream ns=client.GetStream();
StreamWriter sw = new StreamWriter(ns);
sw.WriteLine("Welcome.");
sw.Flush();
sw.Close();
client.Close();
}
client端:
代码如下:
class Program
{
static void Main(string[] args)
{
IPAddress address = IPAddress.Parse("127.0.0.1");
IPEndPoint ep=new IPEndPoint(address, 9000);
TcpClient client = new TcpClient();
client.Connect(ep);
NetworkStream ns=client.GetStream();
StreamReader sr = new StreamReader(ns);
Console.WriteLine(sr.ReadToEnd());
sr.Close();
sr.Dispose();
ns.Close();
ns.Dispose();
client.Close();
Console.ReadKey();
}
}