Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
显示隐藏密码的Java程序_Java_Jpasswordfield - Fatal编程技术网

显示隐藏密码的Java程序

显示隐藏密码的Java程序,java,jpasswordfield,Java,Jpasswordfield,我想制作一个简单的Java程序,显示从浏览器或其他应用程序复制的密码,该密码以星号的形式隐藏 我写了一些代码,但它不工作 例如,当我从Facebook密码字段复制密码,并将其粘贴到我程序的JPassword字段时。然后将其转换为普通文本,它向我显示错误的输出(事实上,它给我的类名很奇怪) 但是,当我复制任何普通文本并将其粘贴到JPasswordField中,然后获取文本时,它会返回正确的普通文本 那它为什么不起作用呢?如果我的问题有点愚蠢,我很抱歉。我不熟悉编程,尤其是实用程序。 我怎样才能让它

我想制作一个简单的Java程序,显示从浏览器或其他应用程序复制的密码,该密码以星号的形式隐藏

我写了一些代码,但它不工作

例如,当我从Facebook密码字段复制密码,并将其粘贴到我程序的JPassword字段时。然后将其转换为普通文本,它向我显示错误的输出(事实上,它给我的类名很奇怪)

但是,当我复制任何普通文本并将其粘贴到JPasswordField中,然后获取文本时,它会返回正确的普通文本

那它为什么不起作用呢?如果我的问题有点愚蠢,我很抱歉。我不熟悉编程,尤其是实用程序。 我怎样才能让它工作D

提前感谢,, 代码如下:

class PasswordViewer extends JFrame {
    JPasswordField field = new JPasswordField(20);
    JButton btn = new JButton("OK");
    JPanel panel = new JPanel();
    char[] s;

    PasswordViewer() {
        setSize(300, 300);
        panel.add(field);
        panel.add(btn);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        add(panel);

        btn.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent arg0) {
                s = field.getPassword();
                findPass();
            }
        });
    }
    void findPass() {
        String str = "";
        for (int i = 0; i < s.length; i++) {
            str += s[i];
        }
        JOptionPane.showMessageDialog(null, str, "PasswordViewer",
            JOptionPane.INFORMATION_MESSAGE);
    }
    public static void main(String[] args) {
        PasswordViewer passview = new PasswordViewer();
        passview.setVisible(true);
    }
}
类密码查看器扩展JFrame{
JPasswordField=新的JPasswordField(20);
JButton btn=新JButton(“正常”);
JPanel面板=新的JPanel();
字符[]s;
PasswordViewer(){
设置大小(300300);
面板。添加(字段);
面板。添加(btn);
setDefaultCloseOperation(关闭时退出);
添加(面板);
btn.addActionListener(新ActionListener(){
已执行的公共无效操作(操作事件arg0){
s=字段。getPassword();
findPass();
}
});
}
void findPass(){
字符串str=“”;
对于(int i=0;i
显然,正如@ankitkatiyar91所指出的,您无法从浏览器的密码字段中复制。 我错了。
在您找到从浏览器的密码字段复制密码的方法之前,此问题没有意义。

因为您复制的文本不准确;但是,更确切地说,它的星号版本不是那样工作的!我不认为你能看到这样的密码。你不能从facebook复制密码。如果你将它粘贴到文本编辑器,你会看到它。大多数现代浏览器不允许复制密码字段的值。您粘贴的内容是您在试图复制密码之前曾经非法复制过的内容。@shekharsuman,我知道!但我以为你能帮上忙?!