Отправка нескольких строк строки на сервер (UDP) в java - PullRequest
0 голосов
/ 15 февраля 2020

Я пытаюсь отправить строку, состоящую из нескольких строк в одном пакете дейтаграмм, от моего клиента к серверу, моя проблема заключается в том, что когда я отправляю строку, на сервер отправляется только первая строка, я хочу отправить одну строку затем через 10 секунд отправить еще одну строку и другую, как я могу решить это ??? это мой код клиента для отправки строки:

    String msge="null";
    String atCurrentLine = null;
     try (BufferedReader cl = new BufferedReader(
     new FileReader("Client1.txt"))) { 
     while ((atCurrentLine = cl.readLine()) != null) {
            msge=atCurrentLine;
    System.out.println(msge);

        } 


    } catch (IOException e) {
     e.printStackTrace();
  } 


    DatagramSocket skt = null;
    try {
      skt = new DatagramSocket();
      byte[] b = msge.getBytes();
      InetAddress host = InetAddress.getByName("localhost");   
      int cl = 6700;                       
      DatagramPacket request = new DatagramPacket(b,b.length,host,cl);  
      skt.send(request);                   

и этот код для сервера для получения:

     DatagramSocket skt = null;
    try {
       skt = new DatagramSocket(6700);
       byte [] buffer = new byte[1000];
        while (true) {                
          DatagramPacket request = new DatagramPacket(buffer,buffer.length);
          skt.receive(request);

          String [] arrayMsg = (new String(request.getData())).split("       ");
          sms=arrayMsg[0];
          System.out.println("received from client :"+arrayMsg[0]);
...