다음은이 오류를 얻으려는 단계입니다.UTF-8 문자열에 대한 java.lang.NumberFormatException
move_to_send = Integer.toString(b_id); // b_id >= 0 && b_id <= 8
// Send over socket
byte[] buf = move_to_send.getBytes();
DatagramPacket packet = new DatagramPacket(buf, buf.length, ADDRESS, opp_port);
socket.send(packet);
byte[] buf = new byte[GAME_DATA.BUF_SIZE];
DatagramPacket packet = new DatagramPacket(buf, GAME_DATA.BUF_SIZE);
socket.receive(packet);
byte[] data = packet.getData();
move_received = new String(data, "UTF-8");
// Error then occurs at this line
int move = Integer.parseInt(move_received);
나는 단순히 소켓을 통해 정수를 보내려고합니다. 아마도 더 좋은 방법이 있을까요? 나는 여전히이 오류가 발생하는 이유를 알고 싶습니다. 왜냐하면 문자열 move_received를 인쇄하면 한자리 숫자 문자열이됩니다.
구문 분석하기 전에 문자열을 자르려고 했습니까? – Perception
그리고'move_received'에는 문자가 무엇입니까? –
'move_received'에 무엇이 들어 있는지 보려고 했습니까? – AlexR