【发布时间】:2014-04-25 01:17:23
【问题描述】:
我有一个如下所示的字节数组:
[0, 0, 0, 0, 0, 0, 0, 0, 122, 98, 117, 54, 46, 0, 0, 115, 122, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, 121, 116, 117, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 107, 111, 98, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 122, 42, 109, 111, 119, 40, 0, 0, 0, 0, 0, 0, 107, 111, 98, 0, 0, 0, 0, 0, 98, 111, 40]
我想把它打印成一个字符串,所以我写了如下代码:
System.out.println(new String(byteArray));
但是没有输出。接下来,我尝试了以下代码:
for (byte b : byteArray) {
System.out.print((char) b);
}
但同样没有输出。但是当我尝试以下代码时:
for (byte b : byteArray) {
System.out.println((char) b);
}
我能够看到这些值。
我的问题是,为什么我不能创建一个字符串,或者为什么第一次打印来自byteArray 的值失败了?
【问题讨论】:
-
不,对我来说一切都很好......
-
好吧,他们在我的电脑上都给出了相同的结果。唯一的区别是
ln给了我很多行。 -
你在任何地方都打过
System.setOut()的电话吗? -
添加
System.out.flush()有帮助吗?
标签: java arrays string system.out