这是 TCPServer 的一个简单实现,我想做的就是在请求时向客户端发送一个字符串。
import java.util.*;
import java.io.*;
import java.net.*;
class TCPServer{
public static void main(String args[]) throws Exception{
ServerSocket server = new ServerSocket(4888);
while(true){
Socket client = server.accept();
DataOutputStream out = new DataOutputStream(client.getOutputStream());
String send = "Bhushan Patil \n 11-237 \n CMPN";
out.writeBytes(send);
}
}
}
但是在 clinet 端只显示了 Bhushan Patil 而没有显示字符串的其余部分。
这是客户端的代码。
import java.util.*;
import java.io.*;
import java.net.*;
class TCPClient{
public static void main(String args[]) throws Exception{
Socket client = new Socket("localhost",4888);
BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream ()));
String display = in.readLine();
System.out.println(display);
}
}
谁能解释为什么会这样? 当我做的时候
System.out.println(send);
我用\n 得到了整个字符串,所以我假设你没有换行。如果我错了,请纠正我。谢谢
最佳答案
更新客户端代码如下:
String display = null
while ((display = in.readLine()) != null)
{
System.out.println(display );
}
关于java - 使用转义字符时无法发送完整的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21577851/