专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-963-0016      微信咨询  |  联系我们

用C建立客户端Socket_服务器

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/8 15:13:50       共计:3596 浏览

用C建立客户端Socket?

TcpListener进行监听就可以了。

using System;

using System.IO;

using System.Net;

using System.Net.Sockets;

using System.Text;

class MyTcpListener

{

public static void Main()

{

TcpListener server=null;

try

{

// Set the TcpListener on port 13000.

Int32 port = 8000;

IPAddress localAddr = IPAddress.Parse("127.0.0.1");

// TcpListener server = new TcpListener(port);

server = new TcpListener(localAddr, port);

// Start listening for client requests.

server.Start();

// Buffer for reading data

Byte[] bytes = new byte[4096];

String data = null;

// Enter the listening loop.

while(true)

{

Console.Write("Waiting for a connection... ");

// Perform a blocking call to accept requests.

// You could also user server.acceptSocket() here.

TcpClient client = server.AcceptTcpClient();

Console.WriteLine("Connected!");

data = null;

// Get a stream object for reading and writing

NetworkStream stream = client.GetStream();

int i;

// Loop to receive all the data sent by the client.

while((i = stream.Read(bytes, 0, bytes.Length))!=0)

{

// Translate data bytes to a ASCII string.

data = System.Text.Encoding.ASCII.GetString(bytes, 0, i);

Console.WriteLine("Received: {0}", data);

// Process the data sent by the client.

data = data.ToUpper();

byte[] msg = System.Text.Encoding.ASCII.GetBytes(data);

// Send back a response.

stream.Write(msg, 0, msg.Length);

Console.WriteLine("Sent: {0}", data);

}

// Shutdown and end connection

client.Close();

}

}

catch(SocketException e)

{

Console.WriteLine("SocketException: {0}", e);

}

finally

{

// Stop listening for new clients.

server.Stop();

}

Console.WriteLine("\nHit enter to continue...");

Console.Read();

}

}

当然,官方的这个示例是单线程的,一次只能处理一个客户端,你可以将accept到的client扔到一个独立的线程,这样就可以多客户端并发处理了。

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:如何安装siri语音助手_服务器 | ·下一条:显示数据库服务未启动或数据库服务异常_服务器

Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有