gpt4 book ai didi

java - 如果Java真的是平台无关的,为什么没有一劳永逸的clearConsoleOutput库方法呢?

转载 作者:行者123 更新时间:2023-12-02 12:58:50 25 4
gpt4 key购买 nike

我想为 windows/mac/linux 编写一个应用程序,我选择了 java,因为一位 java 开发人员 friend 告诉我 Java 是平台无关的。

我遇到了一个问题,我想清除控制台(以使用户更容易阅读)。

我尝试过System.out.flush();Runtime.getRuntime().exec("cls");

似乎唯一真正的解决方案是使用黑客(而且臭代码很糟糕)-Java: Clear the console (检查“Dyndrilliac”答案)。

使用此 hack 的原因很糟糕,正如其他用户对“Dyndrilliac”答案的评论一样,当 Microsoft 或 Apple 将命令名称从“cls”或“clear”更改为不同的名称时会发生什么?它几乎破坏了您的应用程序,并且您从操作系统公司收到错误(例如“命令无法识别”)。

所以我的问题是:Java 是否决定不实现一个处理清除控制台输出的库,因为每当 Windows/Mac/Linux 决定更改其命令名称时都要保持最新状态?或者 Java 是否实现了一个库来处理这个问题,但我就是找不到它?

最佳答案

Java 是独立的,因为它不直接在您的操作系统上运行。 java在jvm(java虚拟机)上运行,因此它在所有操作系统中都应该工作相同。但是您打印到的控制台是特定的操作系统控制台,因此,每个操作系统都会有自己的明确控制台命令(因为它不是同一个控制台)。您可以使用 UI 构建程序(使用 swing 或其他库)并控制您的输出,或者使用您链接到的帖子中的一些技术,它应该可以正常工作。

关于java - 如果Java真的是平台无关的,为什么没有一劳永逸的clearConsoleOutput库方法呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44357508/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com