Java JTextField中的重音字符
我正在制作一个应用程序,其中我使用Java JTextField中的重音字符,java,swing,jtextfield,Java,Swing,Jtextfield,我正在制作一个应用程序,其中我使用JTextField连接到某个东西(在本例中是一个数据库),但当我尝试使用良好的登录/密码进行连接时,它不起作用,因为一些特殊字符会变成错误字符 例子:ç变成希腊字母,ù变成ù等等 我认为这是一个字符集问题,但我找不到如何解决它 我的代码如下所示: JTextField login = new JTextField(); JTextField passw = new JTextField(); JButton connect = new JButton("Co
JTextField
连接到某个东西(在本例中是一个数据库),但当我尝试使用良好的登录/密码进行连接时,它不起作用,因为一些特殊字符会变成错误字符
例子:ç变成希腊字母,ù变成ù等等
我认为这是一个字符集问题,但我找不到如何解决它
我的代码如下所示:
JTextField login = new JTextField();
JTextField passw = new JTextField();
JButton connect = new JButton("Connect");
connect.addActionListener( new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
connect(login.getText(), passw.getText());
}
});
其中connect()
是我连接数据库的方法。
当我从JTextField.getText()
函数打印特殊字符时,一切都搞砸了
我在Windows7电脑上运行一些示例代码会有所帮助:)可能是某种未签名字符->字符问题。我不知道如何格式化字符串。因为某些特殊字符会变成错误字符。你是如何展示角色的?。可能错误不在字符的输入中,也可能是在字符的显示方式中。您确定是文本字段而不是输入文本字段的字符串吗?
JTextField
应支持任何Unicode字符;问题很可能是从数据库中检索字符串时出现的字符编码问题。哎呀,我的错误。但关键是,这可能是数据库连接上的编码问题。在将字符串发送到数据库之前,请使用调试器检查文本字段中的字符串,并排除与终端相关的可能编码问题,可以编写一个循环,将字符串的每个字符打印为整数,以便查看实际的Unicode代码点编号。