Tag: console application

为什么System.console()为命令行应用程序返回null?

我正在开发一个依赖于用户命令行输入的遗留应用程序: String key = System.console().readLine(“Please enter the license key: “); 但是,我得到一个NullPointerException因为System.console()给我一个null。 为什么System.console()为命令行应用程序返回null? 当它从终端以及IDE运行时会发生这种情况。

如何让我的java应用程序打开控制台/终端窗口?

有没有什么办法可以制作一个可执行的.jar,它会在双击时打开命令行? 我正在制作一个基于文本的冒险游戏。 截至目前,它只是一个迷宫与房间。 最终它会变得更大,更深入,但是现在我只想让基本结构失效。 无论如何,为了完成这项工作,我一直在从System.out.printf命令和java.util.Scanner获取输出和输入。 到目前为止,这一切都运行得很漂亮,但是我意识到当我尝试将这个问题发送给其他不知道如何或者不想从命令行运行程序的人时,我会遇到问题。

Java的readline-like库

你使用哪个类似readline的Java库? 像“readline”这样的库我指的是用于编辑控制台输入的库,支持历史记录,制表符完成以及类似的东西。 我正在寻找一个,我无法从众多选择中选择( jLine – unmaintained , java-readline – 2003年最后一次发布,其他?)

如何确定GraphicsEnvironment是否存在

我有一个需要用户输入密码的应用程序。 我想要做的是从控制台读取密码(如果操作系统支持一个例如unix)或显示JOptionPane并要求用户输入他的密码(如果操作系统支持图形界面,例如窗口)。 有些人可能会争辩说,在上述两种情况下都可以使用控制台,因此控制台输入就足够了。 但问题是如果Java应用程序开始使用javaw.exe,则控制台不可用。 因此,我需要一种方法来确定我是否可以做任何一种情况。 我的问题是如何确定运行应用程序的环境是支持控制台还是图形界面。 我知道静态方法存在GraphicsEnvironment.isHeadless()但是从Java doc我认为这个方法无法区分操作系统是否支持图形,而不是操作系统可以支持其中一个I / O设备(键盘,鼠标,屏幕)。 有谁知道更多关于这个? 如果操作系统支持控制台或图形环境,我能够检索吗? 提前致谢。

Java中控制台应用程序中的Unicode输入

我一直在尝试在我的Java应用程序中检索“unicode用户输入”以获取一个小实用程序代码段。 问题是,它似乎正在开发Ubuntu“开箱即用”,我认为在UTF-8上运行OS宽编码,但在从“cmd”运行时无法在Windows上运行。 考虑的代码如下: public class SerTest { public static void main(String[] args) throws Exception { testUnicode(); } public static void testUnicode() throws Exception { System.out.println(“Default charset: ” + Charset.defaultCharset().name()); BufferedReader in = new BufferedReader(new InputStreamReader(System.in, “UTF-8”)); System.out.printf(“Enter ‘абвгд эюя’: “); String line = in.readLine(); String s = “абвгд эюя”; byte[] sBytes = s.getBytes(); System.out.println(“strg bytes: […]

JTextArea作为控制台

我在下面发布了两段代码。 两个代码都可以单独使用。 现在,当我运行Easy文件,然后单击“开始”按钮时,我希望实现类AddNumber。 我的意思是说,而不是在控制台上运行的AddNumber,有没有什么方法可以让我在单击“开始”按钮后在第一个类中创建的JTextArea中运行AddNumber? 我想也许是动作听众?(我们按钮的方式)但我不确定。 有没有其他方法可以让我的JTextArea充当其他.java文件的控制台? import java.awt.*; import javax.swing.*; import java.awt.event.*; public class Easy extends JFrame{ JTextArea text=new JTextArea(); JPanel panel=new JPanel(new GridLayout(2,2)); JButton button1 =new JButton(“Start”); public Easy(){ panel.add(text); panel.add(button1); add(panel,BorderLayout.CENTER); button1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ae){ //add code to call the other class and make the JTextArea act as a console […]