0

我想问是否有人和我有同样的问题:

我从编码UTF-8开始我的项目(是默认项目的编码)。但由于我来自中欧,我决定将编码更改为 Unicode,因为我不想只在JOptionPane.showMessageDialog()Windows 中使用英文字母。
我的应用程序也连接到数据库,并且在将字符集更改为 Unicode 连接后突然不起作用说

com.mysql.jdbc.CommunicationsException:
Communications link failure due to underlying exception


然后我决定通过将字符集更改回 UTF-8 来测试它,并且应用程序能够再次连接。我什至比较了我的连接字符串字符位置,如果它们在 UTF-8 和 Unicode 中不同,但它们是相同的!

我的问题是:当我想避免连接问题时,如何在我的项目中使用东欧字母(与默认 UTF-8 不同的字符集)?

4

1 回答 1

0

UTF-8 并未涵盖斯洛伐克字母表中的所有符号,这就是我决定将字符集更改为 UTF-16 的原因。编译后,一些特定的斯洛伐克字母在 UTF-8 中看起来与我预期的不同。
我不明白的是,如果我将字符集更改为 UTF-16,则会更改我的连接字符串(看起来像jdbc:mysql://localhost/db_name?user=root&password=password),其中仅包含来自 ASCII 代码表的符号,而我的程序无法连接......
使用 latin2 和Windows-1250 我没有问题连接和使用中欧字符。Unicode 在 NetBeans 7.2 中导致此类问题是某种错误吗?

于 2013-01-17T09:23:02.013 回答