2012-10-15 11 views
5

Javas JPasswordField codiert den Eingang, den Benutzer in Passwortfeld eingeben und ich will es nicht. Ich überprüfe Passwort gegen Datenbankwerte, die rein numerische Werte sind.JPasswordField codiert den Eingang

Am Eingabe der numerischen Werte für das Kennwort als

12345 

und es gibt

[[email protected] 
+1

Was meinen Sie mit Codierung? Sie sollten nur die 'getPassword'-Methode verwenden können. – Austin

+0

Wirklich ?! Wie hast du das zur Arbeit gebracht ?! – MadProgrammer

+1

Fehlinterpretieren Sie das normalerweise zurückgegebene 'char []' für einen 'String'? –

Antwort

4

Ich denke, wenn Sie Codierung bedeuten, sind Sie wahrscheinlich die toString Methode zu verwenden versuchen. Welcher auf einem Char-Array, wird nur das Standardobjekt toString Methode verwenden.

Stattdessen könnten Sie wahrscheinlich tun

String password = new String(passwordField.getPassword()); 

Der einzige andere Weg es „codiert“ ist, wenn man irgendwie ein verschlüsseltes Passwort sind immer.

+0

+1. Beachten Sie jedoch, dass Kennwörter normalerweise nicht als 'String'-Instanzen zurückgegeben werden, und zwar aus einem sehr guten Sicherheitsgründen. Ich bin mir nicht sicher, was dieser Grund ist, aber es wurde wahrscheinlich schon oft vorher gefragt/beantwortet. –

+0

danke es funktionierte ... – user1734885

+0

@ user1734885 Wenn es funktionierte, können Sie gerne die Häkchen-Taste drücken, um die Antwort als akzeptiert zu markieren :) – Austin