我在显示“velar鼻子”字符(ŋ)时遇到了问题(但我认为其他罕见字符会出现同样的问题)。不显示在html中的字符
我有一个MySQL表,其中包含这个字符的单词。 当我的代码检索它以显示在我的HTML页面中时,它会显示为问号。
我已经尝试了一些事情:使用MySQL的转换为检索到的字符串转换为UTF-8,因为我理解的是,字符串存储在我的表作为在“latin1”试过 1):
SELECT CONVERT(Name USING utf8)
相反的:
SELECT Name
这并没有帮助,而且,当我在Java代码保存在一个字符串有问题的话(“Yolŋu”),然后通过代码剩下的问题传递的字符串仍然发生(即:问题不在于不同字符编码,我的数据库使用)。
2)我也尝试创建从个字节的新的String:
new String(name.getBytes("UTF-8"));
弦乐正在从Java通过传递给一个JavaScript文件一个JSONObject传递给HTML:
相关JSON代码:
JSONArray names = new JSONArray();
for (int iD: iDs)
{
JSONObject namesData = new JSONObject();
String name = NameDB.getNameName(iD);
nameData.put("label", name);
nameData.put("value", iD);
names.put(nameData);
}
return names;
相关servlet代码:
response.setContentType("application/json");
try (PrintWriter out = response.getWriter())
{
out.print(namesJSONArray);
}
相关的js代码:
ajax对servlet的调用是通过jquery ui的自动完成“源”选项完成的。
我对编码一般很陌生,对字符编码主题也很新颖。
谢谢。
太好了。点数(2)做到了。小改正:该方法被称为“setCharacterEncoding”。 – theyuv 2015-04-03 08:47:04
更正为其他访客。 – 2015-04-07 06:34:00