BufferedReader在收到消息的开头添加奇怪的字符

时间:2017-11-02 13:54:23

标签: java sockets bufferedreader inputstreamreader

让服务器独立运行。

接收消息的服务器代码如下:

in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream(),"utf-8"));
out = new PrintWriter(clientSocket.getOutputStream(), true);
objectOut = new ObjectOutputStream(clientSocket.getOutputStream());

通过以下方式发送消息:

Socket clientSocket = new Socket("IpAddress", portNumber);
ClientConnect newConnection = new ClientConnect(clientSocket,StockMarket.getStockMarket());
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream(), "utf-8"));
BufferedReader stdln = new BufferedReader(new InputStreamReader(System.in));

while ((userInput = stdln.readLine()) != null) {
    out.println(userInput);
    System.out.println("INPUTED:" + userInput);
    System.out.println("ECHO:    " + stdln.readLine());
}

服务器收到的消息很好,但是它在开始时添加了字符。例如,如果我发送“帮助”,它将返回:

  • HELP

我已经读了一下BufferedReader和InputStreamReader,我已经看过几次这个函数:Flush。但是我不明白如何实现它或在哪里。

向正确的方向推动会很棒。

0 个答案:

没有答案
相关问题