网络编程

来源:互联网 发布:知乎关注人数最多的 编辑:程序博客网 时间:2024/05/16 15:00

作业:

1.使用UDP协议编写一个网络程序,设置接收端程序的监听端口是8001,发送端发送的数据是“Hello,world”。

import java.net.*;  public class Test {      public static void main(String[] args) throws Exception {          byte[] buf = new byte[1024];            DatagramSocket ds = new DatagramSocket(8001);          DatagramPacket dp = new DatagramPacket(buf, 1024);          ds.receive(dp);            String str = new String(dp.getData(),0, dp.getLength());          System.out.println(str);          ds.close();       }  }  

import java.net.*;public class Test1 {public static void main (String[] args) throws Exception{DatagramSocket ds=new DatagramSocket(3000);String str="Hello world";DatagramPacket dp = new DatagramPacket(str.getBytes(), str.length(),                  InetAddress.getByName("localhost"), 8001);          ds.send(dp);          ds.close();  }}

2. 使用TCP协议编写一个网络程序,设置服务器端的监听端口是8002,当与客户端建立连接后,服务器端向客户端发送数据“Hello, world”,客户端收到数据后打印输出.

import java.io.*;  import java.net.*;  public class Test{      public static void main(String[] args) throws Exception {          new TCPClient().connect();      }  }  class TCPClient {                   public void connect() throws Exception {          Socket client = new Socket(InetAddress.getLocalHost(), 8002);          InputStream is = client.getInputStream();               byte[] buf = new byte[1024];          int len = is.read(buf);          System.out.println(new String(buf, 0, len));          client.close();                                          }  } 

import java.io.*;  import java.net.*;  public class Test1{      public static void main(String[] args) throws Exception {          new TCPServer().listen();      }  }  class TCPServer {      public void listen() throws Exception {          ServerSocket serverSocket = new ServerSocket(8002);          Socket client = serverSocket.accept();          OutputStream os = client.getOutputStream();          os.write(("hello world").getBytes());          Thread.sleep(5000);           os.close();          client.close();      }  }