Java网络编程:TCP和UDP通信实例

原创 逃离我推掉我的手 2024-10-18 05:45 147阅读 0赞

在Java中,我们可以通过java.net包来实现TCP和UDP的通信。这里我将提供两个基本的例子:

  1. TCP通信实例 (客户端发送数据到服务器)
    ```java
    import java.io.OutputStream;
    import java.net.Socket;
    import java.util.Scanner;

public class TcpClient {
public static void main(String[] args) {
// 创建socket连接
Socket socket = new Socket(“localhost”, 1234); // 注意替换为你想要连接的服务器地址和端口号

  1. // 创建输出流,用于发送数据
  2. OutputStream outputStream = socket.getOutputStream();
  3. // 用户输入数据
  4. Scanner scanner = new Scanner(System.in);
  5. System.out.println("请输入你要发送的数据:");
  6. String inputData = scanner.nextLine();
  7. // 将字符串转化为字节数组,然后写入输出流
  8. byte[] dataBytes = inputData.getBytes();
  9. outputStream.write(dataBytes);
  10. // 关闭连接
  11. socket.close();
  12. }

}

  1. 2. **UDP通信实例** (两个设备之间进行无连接的广播通信)
  2. ```java
  3. import java.net.DatagramSocket;
  4. import java.net.InetAddress;
  5. public class UdpBroadcast {
  6. public static void main(String[] args) {
  7. // 创建DatagramSocket,用于发送数据
  8. DatagramSocket socket = new DatagramSocket();
  9. // 设置广播地址和端口
  10. InetAddress broadcastAddress = InetAddress.getByName("255.255.255"); // 任何网络上的广播地址
  11. int portNumber = 1234; // 要发送数据的端口号
  12. // 创建一个字节数组,用于存储要发送的数据
  13. byte[] dataBytes = "Hello, UDP broadcast message!".getBytes();
  14. // 将数据和地址信息封装成一个Datagram对象
  15. DatagramPacket packet = new DatagramPacket(dataBytes, dataBytes.length), portNumber, broadcastAddress);
  16. // 发送数据包
  17. socket.send(packet);
  18. // 关闭连接
  19. socket.close();
  20. }
  21. }

以上两个例子分别是TCP客户端向服务器发送数据,以及UDP设备进行广播通信。在实际应用中,你需要根据具体需求修改代码。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,147人围观)

还没有评论,来说两句吧...

相关阅读