我有一个字符串“Montaño”,我将它用作 java Map 中的键。但是当我尝试检索该键的值时。它给出 null。
知道这里出了什么问题吗?
已编辑:我从数据库获取的值显示在日志 Monta�o 中,并用作键。但是当我从其他一些参数读取相同的名称(也显示来自 db 的名称)时,它显示为 Montaño。我确信“�”是 ñ。 那么,在将其设置为 map 中的键之前我应该做什么?这样我就可以正确检索该值
最佳答案
从数据库中获取的“替换字符”�不是�,它是一个特殊字符,用于表示无法正确解码的字符。您应该修复您的数据库,以便它始终返回 Montaño。
问题可能与您连接数据库的方式有关,而不是与单个记录有关。您可能需要在连接字符串中设置连接的编码,或者在获取连接后设置连接的属性。您没有说明您使用哪个数据库,因此我无法提供更详细的信息,请检查您的数据库手册以了解连接选项。
关于java - 在 java 映射中使用非 Ascii 字符串作为键时没有得到任何值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17609509/