Java有什么办法可以实现在控制台输入的数据显示为*号????

countrynew 2003-04-16 10:56:22
如题!
...全文
589 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
tangshancheng 2003-04-18
  • 打赏
  • 举报
回复
up
newman0708 2003-04-17
  • 打赏
  • 举报
回复
我试过了没有什么成果。

请高手帮忙吧!
wyqiang 2003-04-17
  • 打赏
  • 举报
回复 1
我想是吧


JPasswordField
gaojunbo 2003-04-16
  • 打赏
  • 举报
回复


那个方法从控制台得到字符,但控制台不显示,忘了.用此方法接收字符,每接收一个用
System.out.println("*");
star821116 2003-04-16
  • 打赏
  • 举报
回复
控制台?不明白,帮你顶!
tangshancheng 2003-04-16
  • 打赏
  • 举报
回复
用JNI有些麻烦,求更好的解法!!!
fletcher 2003-04-16
  • 打赏
  • 举报
回复
学习
tangshancheng 2003-04-16
  • 打赏
  • 举报
回复
//JNI-命令行窗口输入字符,回显掩饰符.txt

/*
目标:在命令行窗口输入字符,不回显所输入字符,回显指定的掩饰符
作者:tangshancheng@21cn.com
*/

1、KeyBoard.java源代码
//: KeyBoard.java
import java.io.*;

public class KeyBoard {
static {
System.loadLibrary("inputdll");
}
public native static char get();

public static void main(String[] args) {
StringBuffer stfDir = new StringBuffer();
KeyBoard test = new KeyBoard();
char c;
c=test.get();
while(c!='\r' && c!='\n'){
System.out.print('*');
stfDir.append(c);
c=test.get();
}
System.out.println("\nHere is what you input:\n"+ new String(stfDir));
}
} ///:~

2、编译、生成头文件(KeyBoard.h)
F:\java>javac KeyBoard.java
F:\java>javah KeyBoard

3、inputdll.cpp文件具体实现这两个函数:
a、在vc中新建...-工程-Win32 Dynamic-Link Library,输入相关信息(工程名为inputdll)
b、新建...-文件-C++Source Files,输入相关信息(文件名为inputdll)
c、输入cpp内容:
#include "KeyBoard.h"
#include "conio.h"
JNIEXPORT jchar JNICALL Java_KeyBoard_get (JNIEnv *, jclass){
char c;
c=getch();
return c;
}

d、编译之前,需要设置工具-选项-Directories(Platform:Win32 Show directories for:Include files),加入三个目录:
F:\J2SDK1.4.1-01\INCLUDE
F:\J2SDK1.4.1-01\INCLUDE\WIN32
F:\JAVA(此目录即KeyBoard.h所在的目录)

4、编译连接成库文件,本例是在WINDOWS下做的,生成的是inputdll.dll文件。
并且名称要与JAVA中需要调用的一致,这里就是inputdll.dll

5、把inputdll.dll拷贝到KeyBoard.class所在的目录下,java KeyBoard运行它,就可以观察到结果了。

6、运行结果实例:
F:\java>java KeyBoard
*******
Here is what you input:
1234567
host263 2003-04-16
  • 打赏
  • 举报
回复
用JPasswordField控件!

62,610

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧