Java的System.out.println(String x)
语句的输出是否有字符限制?
当我尝试使用System.out.println()
打印一些来自Web服务调用的XML时,控制台中实际上只打印了其中一部分。
我要打印的XML字符串非常大。
为什么会出现这种情况?
我猜测你只能看到字符串的最后一部分,因为控制台可以显示的行数是有限制的。
考虑从Java写入日志文件,或将程序的标准输出重定向到文件中:
java com.foo.bar.Main > output.log
我知道把非常长的字符串打印到Eclipse控制台中,会导致该字符串的部分或全部变得不可见。你可能需要将xml拆分成多个块。如果你只看到了xml的尾部部分,那么我猜测可能是你的控制台缓冲区截断了它的一部分内容。@Quaylar发布了一个有关此问题的链接。
实际上没有明确的最大值,但字符串中的偏移量由int确定,因此Integer.MaxValue在我看来是一个限制。这还取决于您可用的内存。
您最好的选择是流式输出并逐部分编写以确保您获得所有内容。