2012-10-15 38 views
5

Java JPasswordField mã hóa đầu vào mà người dùng nhập vào trường mật khẩu và tôi không muốn. Tôi đang kiểm tra mật khẩu dựa trên các giá trị cơ sở dữ liệu, đó là các giá trị thuần túy.JPasswordField mã hóa đầu vào

Am nhập các giá trị số cho mật khẩu như

12345 

và nó trả

[[email protected] 
+1

Bạn có ý nghĩa gì khi mã hóa? Bạn chỉ có thể sử dụng phương thức 'getPassword'. – Austin

+0

Thật sao ?! Làm thế nào bạn có được điều đó để làm việc ?! – MadProgrammer

+1

Bạn có hiểu sai 'char []' thường được trả về, cho một 'Chuỗi' không? –

Trả lời

4

Tôi nghĩ rằng khi bạn có nghĩa là mã hóa, có lẽ bạn đang cố gắng sử dụng các phương pháp toString. Mà trên một mảng char, sẽ chỉ sử dụng phương pháp tiêu chuẩn đối tượng toString.

Thay vào đó bạn có thể có thể làm

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

Chỉ khác cách đó là "mã hóa" là nếu bạn đang nhận được một mật khẩu được mã hóa bằng cách nào đó.

+0

+1, mặc dù lưu ý rằng mật khẩu thường không được trả lại là trường hợp 'String' vì lý do liên quan đến bảo mật tốt. Tôi không chắc lý do đó là gì, nhưng nó có thể đã được hỏi/trả lời nhiều lần trước đây. –

+0

nhờ nó hoạt động ... – user1734885

+0

@ user1734885 Nếu nó hoạt động, bạn được hoan nghênh nhấn nút dấu kiểm để đánh dấu câu trả lời được chấp nhận :) – Austin

Các vấn đề liên quan