Я пытаюсь создать клиент-серверное приложение, используя java UDP.когда сервер принимает сообщение от клиента, он должен декодировать IP-адрес и номер порта, чтобы он мог отправить данные обратно.проблема заключается в том, когда IP-адрес декодируется из пакета, имеет / впереди, поэтому он не может вернуть сообщение.вывод для программы следующий:
ожидание получения данных: сообщение /178.179.35.1 56798
как мне удалить / с начала IP-адреса, декодируемого из пакета?СПАСИБО!
import java.io.*;
import java.net.*;
class UDPServer {
public static void main(String args[]) throws Exception {
DatagramSocket serverSocket = new DatagramSocket(9876);
byte[] receiveData = new byte[1024];
byte[] sendData = new byte[1024];
while(true) {
System.out.println("waiting for data");
DatagramPacket receivePacket = new DatagramPacket(receiveData,receiveData.length);
serverSocket.receive(receivePacket);
String sentence = new String( receivePacket.getData());
System.out.println("RECEIVED: " + sentence);
InetAddress IPAddress = receivePacket.getAddress();
System.out.println(IPAddress);
SocketAddress newtry = receivePacket.getSocketAddress();
int port = receivePacket.getPort();
System.out.println(port);
String capitalizedSentence = sentence.toUpperCase();
sendData = capitalizedSentence.getBytes();
DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, newtry);
serverSocket.send(sendPacket);
}
}
}