- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在开发一个小项目,我想为其使用国际化。问题是,当我尝试使用内部带有西里尔符号的 .properties 文件时,文本显示为垃圾。当我对字符串进行硬编码时,它显示得很好。
这是我的代码:
ResourceBundle labels = ResourceBundle.getBundle("Labels");
btnQuit = new JButton(labels.getString("quit"));
在我的 .properties 文件中:
退出 = Изход
我得到了垃圾。当我尝试
btnQuit = new JButton("Изход);
显示正确。据我所知,UTF-8 是用于文件的编码。
有什么想法吗?
最佳答案
AnyEdit是一个 eclipse 插件,它允许您轻松地将属性文件与 unicode 表示法相互转换。 (避免使用像 native2ascii 这样的命令行工具)
如果您使用的是 Properties
单独类(没有资源包),因为 Java 1.6 你可以选择 load具有自定义编码的文件,使用 Reader
(而不是 InputStream
)
我猜你也可以使用 new PropertyResourceBundle(reader)
,而不是 ResourceBundle.getBundle(..)
,其中 reader
是:
Reader reader = new BufferedReader(new InputStreamReader(
getClass().getResourceAsStream("messages.properties"), "utf-8")));
关于java - 在 eclipse 项目中使用西里尔字母 .properties 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3596276/
我在数据库中有一个具有俄罗斯值(value)观的项目。我需要做的就是附和他们,但事实证明这比预期的要困难。所有俄语字符都只是作为问号打印。 IE: ??? ? ????????对于我尝试过的每种编码,
这是我解析 JSON 的函数: func jsonParsingWeather(urlPath:String) -> NSDictionary { var utf8URLPath = urlP
我是一名优秀的程序员,十分优秀!