В настоящее время я устанавливаю соединение между программным обеспечением и приложением, использующим сокет Java.
Код более или менее похож на этот
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class Input {
public static void main(String[] args) {
try{
Socket s=new Socket("ok",10003);
PrintWriter printWriter = new PrintWriter(s.getOutputStream());
Scanner scanner = new Scanner( System.in );
BufferedReader inserver = new BufferedReader(new
InputStreamReader(s.getInputStream()));
String str = scanner.nextLine();
String hisscanner = "\u0002"+str+"\u0003";
printWriter.write(hisscanner);
s.shutdownInput();
String response = inserver.readLine();
System.out.println("FROM SERVER: " + response);
printWriter.close();
s.close();
scanner.close();
}catch (UnknownHostException ex) {
System.out.println("Could not connect to the server [Unknown exception]");
} catch (IOException ex) {
System.out.println(ex.getMessage());
}
}}
Итак, мы отправляем строку в приложение, и приложение должно ответить на строку. Он успешно отправил строку в приложение, и это приложение также правильно показывает ответ.
Пример журнала приложения:
https://ibb.co/ikLxNJ
Проблема в том, что ответ не будет отображаться в консоли программного обеспечения, которое я сделал.
Консоль:
https://ibb.co/e5fghJ
Программное обеспечение, которое я запускаю, всегда возвращается с NULL, может кто-нибудь помочь указать, что не так, и помочь мне исправить это?