我需要构建一个将本地化为非拉丁语言的JSP应用程序。 JSP页面包含从数据库(MySQL)中检索某些显示元素的标记,以及从资源包中检索其他元素的标记(属性文件,其内容以Unicode编写,我也尝试过UTF-8)。
我认为,问题在于,从资源包返回的字符串似乎将unicode / UTF-8代码点的每个字节放在它自己的字符串字符中。例如,/ u0620在返回的字符串中占用两个字符,第一个字符为0x06,第二个字符为0x20。从资源包中检索的字符串是双倍的。
我的问题是属性文件本身还是属于resourceBundle?
非常感谢任何帮助。
答案 0 :(得分:0)
如果使用UTF-8,那么UTF-8字符实际上 IS 2个字节。编程语言是将它作为两个字节还是一个字符处理,对于实际代码来说并不重要。
另外,请避免使用UTF-16或其他形式的Unicode。 UTF-8是现在唯一“适当”的做事方式。
此外,正如bmargulies指出的那样,您可能想要使用pageEncoding="utf-8"