2012-02-16 94 views
14

在Java中我试图写一个字符串作为输出到控制台。字符串的长度是20166个字符。将字符串打印到控制台后,只出现字符串的后半部分。Eclipse控制台不显示整个输出

整个字符串是一个长行:

是什么样子: 从一开始有很多空格(这应该是字母数字字符),之后还有其余该字符串正确显示。

我试图将控制台编码从默认更改为UTF-16和UTF-8,但它没有帮助。

我试图输出的字符串是从特定网页(http://docs.jquery.com/Tutorials:Getting_Started_with_jQuery)抓取的文本内容。如果我抓取一个不同的网页没有问题。

如何处理字符串: 我使用web服务从网页获取文本内容。返回的字符串(文本输入)正确打印(整体)。我需要处理该字符串,以便将所有字符更改为小写,并将所有多个空格替换为单个空格。

textContent.toLowerCase().replaceAll("\\s+", " "); 

lowercasing人物后,我仍然能够正常打印整个字符串,但有一个代替多个空格之后,字符串的开头是不可见的。

你有什么想法是什么问题?

Thakns提前寻求帮助。

+0

它只有日食发生的更多信息和细节?我的意思是,你是否试过从控制台运行它,结果是预期的? – fortran 2012-02-16 14:25:49

+0

[Java中System.out.println()的字符限制]的可能重复(http://stackoverflow.com/questions/8912202/character-limit-for-system-out-println-in-java)。 – 2017-02-23 09:31:00

回答

20

控制台的偏好是什么?尤其是检查设置“固定宽度控制台”和“限制控制台输出”。也许你的控制台根本无法在一行中保存那么多字符。

[编辑]现在Eclipse最终不得不削减控制台中的数据,因为它没有无限量的内存。如果控制台仍然被关闭,您可以使用这个技巧:打开“运行配置”对话框(在绿色的“运行”按钮的下拉菜单中找到)。

标签“公共”选项卡在底部的“标准输入和输出”组中具有选项,用于保存文件中所有输出的副本。然后你可以使用你的操作系统工具来检查这个文件。

另请注意,非常长的行会使Eclipse变慢(即可能会挂几秒)。这是由于bug in the regexp matching patterns for Exception stack traces。如果发生这种情况,请将行长限制为1000个字符或更少。

这对于Spring来说尤其有问题,它有时会在消息中创建具有50'000个字符的异常。

如果您有类似的问题与CDT全球建立控制台,在这里看到:在控制台缓冲区大小Eclipse CDT Build Console output not displaying entire compiler output

+0

设置'固定宽度控制台'后,我可以看到整个输出。感谢您解决问题。 但你有什么想法的原因?它可能是Eclipse的错误? – mimo 2012-02-16 15:06:53

+0

嗨,我正在使用eclipse Kepler,我没有选中限制控制台输出长度的选项,但它仍然会在日志过长时切断日志的开始,这使得调试/非常/很难考虑我可以找不到根本原因......我认为这必定是一个日食错误,是否有解决方法? – Troyseph 2014-10-03 10:28:58

+0

@SebastianTroy:请问一个新问题 - 其他人可能有同样的问题。 – 2014-10-03 11:17:27

1

检查是否满足你的情况下,在首选项。通常它是80000个字符,以防万一它被改变了。

+0

我通过取消选中“限制控制台输出”将缓冲区大小更改为无限制,我忘了在我的帖子中提到它。 – mimo 2012-02-16 15:04:27

21

这没有错误。它是Eclipse包含的可更改设置之一,使输出更具可读性。可以通过转到Windows - >首选项 - >运行/调试 - >控制台,然后取消选中默认为ON的“限制控制台输出”来更改它。

有关这些设置的访问 http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Freference%2Fpreferences%2Frun-debug%2Fref-console.htm

+0

谢谢..你的答案也帮助了我..我upvoted它.. @Menezes Sousa – 2014-02-14 09:34:39

+0

这个答案比检查答案更实际,我认为。 Upvoted! – limonik 2016-08-30 07:24:48

+0

对于Mac,它是Eclipse>首选项>运行/调试>控制台。 是的,这应该是被接受的答案。 – Munib 2016-11-30 18:32:52