java - 无法显示unicode字符

标签 java postgresql unicode unicode-string

我想在我包含的 JSP 页面中显示存储在 PostgreSQL 数据库中的土耳其语字符:<meta http-equiv="content-type" content="text/html;charset=utf-8" /> .

我仍然无法在屏幕上看到实际的土耳其语字符集。在数据库中,该字符串存储为 %C4%9F%C4%B1%C4%B0%C3%B6%C5%9F%C3%BC%C4%9F%C4%B0

当我使用 resultsetwrapperobject.getstring("columnname"); 从 PostgreSQL 获取它时,它会自动将其转换成这样的字符串:\304\237\304\261\304\260\303\266\305\237\303\274\304\

我想知道为什么会发生这种自动转换以及如何停止这种转换。

最佳答案

你能看一下“resultsetwrapperobject”类的代码吗?可能是实现使用具有默认(或特殊)编码的缓冲读取器。

你可以使用

public String(byte bytes[], String charsetName)

用于转换字符串

final String charSet = "UTF8"; // or "ISO-8859-1"
String tSrt = resultsetwrapperobject.getstring("columnname");
tStr = new String(tStr.getBytes(),charSet);

您也可以尝试将 java 默认文件编码设置为 java 系统属性。

-Dfile.encoding=UTF8

关于java - 无法显示unicode字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7739070/

相关文章:

java - 类 obj = obj1; 是什么意思?

Java游戏编程: multiple instances of an object,对待方式一样吗?

postgresql - 基于事件的分析包,不会因高容量而破产

c# - 当参数不为空 Npgsql 时,在 linq 查询中包含 where 子句

mysql - utf8_general_ci和utf8_unicode_ci有什么区别?

javascript转到带有unicode字符的url

java - 如何在 Android 应用程序退出之前进行一些清理?

java - 加密 key 大小 DES Java

Postgresql 10 逻辑复制不起作用

c++ - unicode 字符值