【发布时间】:2016-01-27 09:48:30
【问题描述】:
我试试这个代码:
byte[] data = new byte[66000];
int count = is.read(data);
String sRequest = new String(data); //will received byte array hello
String all = sRequest;
all = all.concat("world");
System.out.println(all);
它只打印到我的控制台:hello
concat java的函数有bug吗?我还使用 + 运算符而不是 concat 函数,但结果相同:( 如何将字符串与字节数组中的新字符串连接起来?
【问题讨论】:
-
您确定这正是您正在测试的代码吗?我无法重现这个。
-
您应该注意的一点是,结果字符串的长度为 66005,因为它包含了数组中
hello和world之间的所有空值。 -
我也是。可能会在这一行上方给我们一些您的代码...
-
您忽略了返回的字节数。注意:并非所有字符都是可打印的,因此您不能总是期望看到它们。