gpt4 book ai didi

java,为什么DataInputStream在空格时分割字符串

转载 作者:行者123 更新时间:2023-12-02 13:31:42 26 4
gpt4 key购买 nike

所以我尝试学习SocketDataInputStream

当我尝试相当多的尝试时,我意识到 DataInputStream 将字符串读取为分开的,意思是这样的:

客户端:

dos = new DataOutputStream(socket.getOutputStream());

String msg = "okay test some String"

dos.writeUTF(msg);

服务器端:

dis = new DataInputStream(socket.getInputStream());

while(true){

msg = dis.readUTF();

Syso(msg);

}

结果:

okay

test

some

String

我想在一行中完整地阅读msg。我该怎么办?

最佳答案

使用BufferedReader

dis = new BufferedReader(new InputStreamReader(socket.getInputs()))
while(true){
msg = dis.readLine()
System.out.println(msg);
}

或者您可以将 System.out.println 替换为 System.out.print,它不会在末尾打印换行符

dis = new DataInputStream(socket.getInputStream());
while(true){
msg = dis.readUTF();
System.out.print(msg+" ");
}

关于java,为什么DataInputStream在空格时分割字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43165518/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com