是的,可以做。 这称为命令行输入屏蔽。 您可以轻松实现此目的。

您可以使用单独的线程擦除输入的回显字符,并用星号替换。 使用下面显示的EraserThread类完成此操作

import java.io.*;

class EraserThread implements Runnable {

private boolean stop;

/**

*@param The prompt displayed to the user

*/

public EraserThread(String prompt) {

System.out.print(prompt);

}

/**

* Begin masking...display asterisks (*)

*/

public void run () {

stop = true;

while (stop) {

System.out.print("\010*");

try {

Thread.currentThread().sleep(1);

} catch(InterruptedException ie) {

ie.printStackTrace();

}

}

}

/**

* Instruct the thread to stop masking

*/

public void stopMasking() {

this.stop = false;

}

}

使用此线程

public class PasswordField {

/**

*@param prompt The prompt to display to the user

*@return The password as entered by the user

*/

public static String readPassword (String prompt) {

EraserThread et = new EraserThread(prompt);

Thread mask = new Thread(et);

mask.start();

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

String password = "";

try {

password = in.readLine();

} catch (IOException ioe) {

ioe.printStackTrace();

}

// stop masking

et.stopMasking();

// return the password entered by the user

return password;

}

}

此链接详细讨论。

java命令行读入密码_java-在命令行上隐藏输入相关推荐

  1. java编辑2048小游戏_Java 制作命令行版 2048小游戏

    Java 命令行版 2048小游戏(2020年8月14日) 制作背景 大二即将开学,从头开始学习了一个多月的java,对二维数组的操作稍微熟悉了一些.于是想做一个简单的2048来试一试. 众所周知,2 ...

  2. 华为服务器命令行修改密码,华为IAD命令行配置方法

    <华为IAD命令行配置方法>由会员分享,可在线阅读,更多相关<华为IAD命令行配置方法(3页珍藏版)>请在人人文库网上搜索. 1.华为IAD命令行配置命令1.登录:User n ...

  3. java命令模式返回值_JAVA 设计模式 命令模式

    目录 用途 命令模式 (Command) 将一个请求 封装为一个对象,从而使你可以用 不同的请求对客户进行 参数化: 对请求排队或请求日志,以及支持可撤销的操作. 命令模式是一种行为型模式. 结构 图 ...

  4. usermod命令,用户密码管理passwd命令,mkpasswd命令

    usermod命令 usermod命令用来给用户设定UID及GID 给用户设定UID usermod -u *** username 给用户设定GID usermod -g ***/groupname ...

  5. java 怎么执行数据库命令_java 调用命令 备份mysql数据库

    代码如下: 1  String command  =   " cmd /c C:/Program Files/MySQL/MySQL Server 5.0/bin>mysqldump ...

  6. java ldap添加用户名密码_java ldap用户密码md5加密

    在这里不过多介绍ldap,因为这样的文章特别多,这里就简单直接的记录这一个问题. 在springboot中通过引入spring-boot-starter-data-ldap,使用LdapTemplat ...

  7. java zip 解压 密码_Java解压和压缩带密码的zip文件过程详解

    前言 JDK自带的ZIP操作接口(java.util.zip包,请参看文章末尾的博客链接)并不支持密码,甚至也不支持中文文件名. 为了解决ZIP压缩文件的密码问题,在网上搜索良久,终于找到了winzi ...

  8. java zip压缩 加密码_java 压缩成zip文件、解压zip文件(可设置密码)

    1.情景展示 java实现将文件夹进行压缩打包的功能及在线解压功能 2.解决方案 方式一:压缩.解压zip 准备工作:slf4j-api.jar org.slf4j slf4j-api 1.7.25 ...

  9. java用户登录记住密码_java项目中登陆时记住密码

    1.在登陆的时候记住密码,不知自动登陆: 2.登陆页面,填写用户名,密码,点击记住密码,下次进入登陆页面的时候,填写同样的用户名,密码自动填充(在不一次会话的情况下也就是说在不关闭浏览器的情况下): ...

最新文章

  1. 蓝桥杯java第三届决赛第一题--星期日
  2. Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
  3. python分支语句_Python中分支语句与循环语句实例详解
  4. 【软件工程第三次作业】
  5. docker 我的世界服务器_八个Docker的真实应用场景
  6. 理想汽车已累计交付2万台 仅用时10个月
  7. 圆章能随便刻吗_当归、人参、虫草熬成的养生汤,能随便销售吗?
  8. 设计模式之单例模式8种实现方式,其二:饿汉式-静态代码块饿汉式
  9. 从 C# 1.0 到 C# 9.0,历代 C# 语言特性一览
  10. IIS6上Ssl开发环境的搭建
  11. 计算机终端维护组织结构,信息部组织架构及人员编制 Manning GuideOrganization Chart...
  12. Android虚拟AB升级流程简述及升级完整log
  13. 移动硬盘不在计算机显示,移动硬盘在电脑上不显示怎么办
  14. matlab format rat,format rat
  15. dim c语言,编程基础-C程序的组成
  16. twitter点赞图标分析
  17. win10出现打印机无法打印,而其他显示正常,重启没反应
  18. 批处理系统脱机使用计算机,1.2.2 脱机输入/输出和批处理系统
  19. LQ0116 方格计数【数学计算】
  20. Unity 网页插件Embedded Browser的使用

热门文章

  1. jar包升级部署到服务器详细流程,将服务部署在linux中
  2. 2022-2028年中国汽车俱乐部行业发展趋势与投资战略研究报告
  3. Go 学习笔记(60)— Go 第三方库之 go-redis(初始化 redis、操作 string、操作 list、操作 set、操作 hset)
  4. Eclipse的编码
  5. 用心真诚对待,懂你的人
  6. hadoop,spark,scala,flink 大数据分布式系统汇总
  7. LeetCode简单题之数字转换为十六进制数
  8. Usb-type-C端口实现的挑战与设计方案
  9. thinkphp5.1 中间件是什么有什么用
  10. mysql 分号 存储过程_MySql 存储过程