wordpress   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Windows下的Java控制台bug大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

以下代码 System.out.println("Start"); String s = ""; //936 * 5 = 4680 characters for (int i = 0; i < 937; i++){ s += "1234 "; } System.out.println(s); System.out.println("End"); 在Windows下的java控制台上的“开始
以下代码
System.out.println("Start");
String s = "";
//936 * 5 = 4680 characters
for (int i = 0; i < 937; i++){
    s += "1234 ";
}
System.out.println(s);
System.out.println("End");

在Windows下的java控制台上的“开始”和“结束”之间产生一个空行,但在运行MacOS或Linux时可以正常工作.写入文件而不是使用sysout时也是如此.我试过多台Windows机器.无论我是通过eclipse还是通过cmd执行方法都没关系.

当您将“1234”更改为“1234”或“12g4”或运行次数多于/少于936时,它将按预期在所有操作系统中运行.

任何人都可以确认这个/有关于这个问题的已知错误吗?

我也可以在Windows 7下重现这一点.由于SWT中的OS,它看起来像是一个限制,它似乎已经存在了很长时间(2002).它被标记为WONTFIX.见 GC#drawString,drawText don’t render more than 10923 characters per line correctly.所以这是一个已知的bug.

解决方法是转到Workspace-> Preferences-> Run / Debug->控制台并将固定宽度控制台设置为4000个字符.这将在4000个字符后包裹你的行,这是一个痛苦,但至少你会得到你的所有输出.

我曾经尝试过Galileo(3.5),Helios(3.6)和Indigo(3.7),并且都表现出了这种行为,但很奇怪,Galileo& OP表示,Helios有一个限制= 818(4090个字符)和Indigo = 936(4680)个字符. 4090让我想到操作系统限制(下一个将是4090 5 crlf,> 4096),它与Eclipse / SWT中引发的错误相匹配.我无法解释为什么接受的字符数有所不同.我只能建议它是操作系统中的东西.

Eclipse中引发了许多重复的错误

> Bug 19850 – Large string printed in Console overstrikes/disappears depending on length
> Bug 44866 – Truncate long strings in variables view
> Bug 104588 – Unreadable console output under certain conditions

一切似乎都是由于:Bug 11601 – console hangs while displaying long strings without crlf

大佬总结

以上是大佬教程为你收集整理的Windows下的Java控制台bug全部内容,希望文章能够帮你解决Windows下的Java控制台bug所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: