我用readLine的BufferedReader获得输入/从用户的新密码,但希望屏蔽密码,所以我试图用java.io.Console类.问题是在Eclipse中调试应用程序时System.console()返回null.我是Java和Eclipse的新手,不确定这是最好的实现方式吗?我右键单击源文件并选择"Debug As">"Java Application".有没有解决方法?
我刚开始用IntelliJ IDE学习Java.我知道有点C#所以逻辑是有道理的,但到目前为止有一件事我无法克服它.
我如何从控制台读取?在C#中,您可以轻松地阅读人类输入的内容Console.ReadLine().在Java中, System.console().readLine();对我不起作用并抛出一个NullPointerException.
我在这里错过了什么?
我想创建一个从STDIN静默读取密码的Java程序.我的意思是,不向终端输出任何按下的字符,并将其隐藏在命令行历史记录和操作系统进程列表中ps.
我试过代码:
import java.io.Console;
public class Default
{
public static void main(String args[]) throws IOException
{
Console console = System.console();
String testing = console.readLine("Enter Name: ");
System.out.println("Entered Name: "+ testing);
}
}
Run Code Online (Sandbox Code Playgroud)
转到异常,出现以下错误:
Source not found. NullPointerException
我正在使用Eclipse Juno EE进行调试..!
以上编写的代码的参考链接在这里
我想了解其他使用其他类的用户输入的方法BufferedReader,而不是使用Scanner类.那么,有没有其他方式来获取用户的输入?如果是这样,它比Scanner班级有效吗?
我java.io.Console使用eclipse 尝试了API.我的示例代码如下.
package app;
import java.io.Console;
public class MainClass {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Console console = System.console();
console.printf("Hello, world!!");
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试运行该示例时,我收到以下错误.
app.MainClass.main(MainClass.java:11)中线程"main"java.lang.NullPointerException中的异常
我哪里做错了?谢谢.
首先,我阅读了所有相关主题,但没有一个回答我的问题.
我正在使用Eclipse开发Java程序,我需要在程序启动后不断地将一些参数传递给程序.
例如,我需要在它开始执行后通过命令行给它这个命令:
CreateTable Students 2 10 10
然后我必须能够提供更多命令,例如:
AddRecord Students Jack 1456
Eclipse的运行配置无法解决问题,因为我只能使用运行配置为程序提供一次参数.但我需要做多行?
有人有解决方案吗?提前致谢
可能重复:
System.Console()返回null
码:
public class Demo {
public static void main(String[] args){
Console c = System.console();
if (c == null) {
System.err.println("No console.");
System.exit(1);
}else {
System.out.println("Console is.");
System.exit(0);
}
}
Run Code Online (Sandbox Code Playgroud)
}
总是没有控制台.为什么?怎么修?谢谢.