java - 在 java 映射中使用非 Ascii 字符串作为键时没有得到任何值

标签 java collections special-characters

我有一个字符串“Montaño”,我将它用作 java Map 中的键。但是当我尝试检索该键的值时。它给出 null。

知道这里出了什么问题吗?

已编辑:我从数据库获取的值显示在日志 Monta�o 中,并用作键。但是当我从其他一些参数读取相同的名称(也显示来自 db 的名称)时,它显示为 Montaño。我确信“�”是 ñ。 那么,在将其设置为 map 中的键之前我应该​​做什么?这样我就可以正确检索该值

最佳答案

从数据库中获取的“替换字符”�不是�,它是一个特殊字符,用于表示无法正确解码的字符。您应该修复您的数据库,以便它始终返回 Montaño。

问题可能与您连接数据库的方式有关,而不是与单个记录有关。您可能需要在连接字符串中设置连接的编码,或者在获取连接后设置连接的属性。您没有说明您使用哪个数据库,因此我无法提供更详细的信息,请检查您的数据库手册以了解连接选项。

关于java - 在 java 映射中使用非 Ascii 字符串作为键时没有得到任何值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17609509/

相关文章:

java - Map.containsValue() 返回 false

c# - 将 List<T> 定制为 ListCustomMinIndexedForEach<T> 的问题(从不相关的实现中剥离)

mysql - 使用 MySQL 查询检索包含特殊字符的电子邮件地址

web-services - 如何将 URL 参数传递给 jersey web 服务,例如...?lib=T%E2che%20Yves

java - 有没有办法在通过 Selenium 加载后将一些js添加到所有页面中?

java - Testcontainer Keycloak 无法连接到 Testcontainer PostgreSQL

java - 我用于选择操作的 JDBCTemplate 代码有什么问题?

java - 我无法暂停并继续 CountDownTimer

java - 打印 Collection 类元素的最佳方法是什么?

java - jsp 将越南语传递给 java 类文件