怎么把客户端编程服务端

时间:2025-01-25 11:14:19 游戏攻略

将客户端编程服务端的过程涉及多个步骤,以下是一些常见编程语言的示例:

1. 使用Python进行Socket编程

服务器端代码示例:

```python

import socket

创建Socket对象

server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

绑定地址和端口

server_socket.bind(('localhost', 9999))

监听连接

server_socket.listen(5)

print("服务器启动,等待连接...")

while True:

接受一个新连接

client_socket, addr = server_socket.accept()

print(f"连接地址: {addr}")

接收数据

received = client_socket.recv(1024)

print(f"收到消息: {received.decode()}")

发送数据

client_socket.send(b"Hello from server!")

关闭连接

client_socket.close()

```

客户端代码示例:

```python

import socket

创建Socket对象

client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

连接到服务器

client_socket.connect(('localhost', 9999))

接收数据

data = client_socket.recv(1024)

print(f"收到消息: {data.decode()}")

发送数据

client_socket.send(b"Hello from client!")

关闭连接

client_socket.close()

```

2. 使用Java进行Socket编程

服务器端代码示例:

```java

import java.io.*;

import java.net.*;

public class Server {

public static void main(String[] args) throws IOException {

ServerSocket serverSocket = new ServerSocket(9999);

System.out.println("服务器启动,等待连接...");

while (true) {

Socket clientSocket = serverSocket.accept();

BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));

PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);

String inputLine;

while ((inputLine = in.readLine()) != null) {

System.out.println("收到消息: " + inputLine);

out.println("Hello from server!");

}

clientSocket.close();

}

}

}

```

客户端代码示例:

```java

import java.io.*;

import java.net.*;

public class Client {

public static void main(String[] args) throws IOException {

Socket socket = new Socket("localhost", 9999);

BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));

PrintWriter out = new PrintWriter(socket.getOutputStream(), true);

out.println("Hello from client!");

String response = in.readLine();

System.out.println("收到消息: " + response);

socket.close();

}

}

```

3. 使用C进行Socket编程

服务器端代码示例:

```csharp

using System;

using System.Net;

using System.Net.Sockets;

using System.Text;

class Server

{

static void Main()

{

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

IPEndPoint localEP = new IPEndPoint(localAddr, 9999);

Socket listener = new Socket(localAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp);

listener.Bind(localEP);

listener.Listen(10);

Console.WriteLine("服务器启动,等待连接...");

while (true)

{

Socket handler = listener.Accept();

string data = null;

byte[] bytes = new byte;

int i = handler.Receive(bytes);

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

Console.WriteLine("收到消息: " + data);

byte[] msg = Encoding.ASCII.GetBytes("Hello from server!");

handler.Send(msg);

handler.Close();

}

}

}

```

客户端代码示例: