我试着用中文读取.properties文件。当我用他们打印的钥匙看他们时,他们就像?我正在编写JSF应用程序。我需要为这份申请做中文翻译。在JSF中的UI中,它正确地显示了所有字符。但在我的java代码中,它显示的是?我不知道为什么。我还试过"手提電話“和”u88dc\u7fd2\u500b\u6848“,并尝试在控制台上打印它们,主要功能是在中文lang字符中正确打印。我的属性文件有编码utf-8。
为了澄清您对此的困惑,我可以用中文显示它们的控制台。
String str="Алексей";
String str="\u88dc\u7fd2\u500b\u6848";
System.out.println("direct output: "+str);在psvm中工作很好。但是在阅读了使用属性文件是显示?E希望现在是清楚的。我的数据库也收到了??用于实际汉字的位置。
请帮帮忙。任何其他的澄清,然后请确认,以便我可以更新我的台词在这里。
下面是读取属性文件的代码,该文件返回相关区域设置的包。
FacesContext context = FacesContext.getCurrentInstance();
bundle = context.getApplication().getResourceBundle(context, "hardvalue");在此之后,我将调用它来访问值:
bundle.getString("tutorsearch.header"); // results in ?????您需要的其他代码请确认。
发布于 2016-02-08 20:17:58
多个问号通常来自
SET NAMES latin1生效(默认,但错误)CHARACTER SET latin1 (默认值,但错误)对于中文(或Emoji),您需要使用MySQL的utf8mb4。
解决方法(用于未来的INSERTs):
mysqli_set_charset('utf8mb4') (或您的客户建立CHARACTER SET所需的一切)CHARACTER SET utf8mb4<meta...charset=utf-8>应该接近顶部。(注意不同的拼写。)发布于 2016-03-06 05:00:10
添加下面的标签已经解决了我的问题。
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>感谢所有
https://stackoverflow.com/questions/35273712
复制相似问题