我有一个 Java 命令行应用程序,它需要将用户名和密码作为传入主函数的参数。
有没有办法在用户输入密码时让密码显示为星号?
谢谢。
最佳答案
据我所知,在没有某种包装程序的情况下,无法将隐藏密码作为命令行参数传递给 main 方法。
但是,使用 System.console().readPassword()
或 System.console().readPassword(String fmt, Object... args)
该程序可以从命令行读取用户输入,而不显示用户正在输入的内容。
编辑: 我不知道 java 中有任何现有的东西可以在用户键入密码时用星号替换密码中的所有字符,但是做这样的事情需要制作它以便命令行会将字符单独发送给程序,而不是在行尾一起发送。
没有什么容易或便携的,但更多信息 here .
关于java - 如何将显示为星号的参数传递给 Java 应用程序的主要功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19827509/