我有这些代码行:Locale[]cosas=Locale.getAvailableLocales();for(inti=0;i我得到这个列表:ms_MYar_QAis_ISfi_FIplen_MTit_CHnl_BEar_SAar_IQes_PRes_CLfide_ATdaen_GBes_PAsrar_YEmk_MKmken_CAvi_VNnl_NLes_USzh_CNes_HNen_USfrtharar_MAlvdein_IDhren_ZAko_KRar_TNinjasr_RSbe_BYzh_TWar_SDptisja_JP_JP_#u-ca-japanesees_BOar_DZms
我正在使用ResourceBundle,我想给用户一个选择GUI语言的选项。我想获取特定包下所有资源文件的列表。我不知道我会有什么资源,因为这个应用程序是基于插件的。是否有一个选项可以让java搜索包下的所有可用资源?(如果不是,我想插件应该为它提供所有可用的本地信息)谢谢大家 最佳答案 这些文件可能驻留在网络服务器上。在Web服务器上没有列出文件(页面)的标准方法。因此,一般来说,您需要做的是记住您拥有哪些区域设置的资源(也许创建一个列表作为构建过程的一部分)。 关于java-列出所有
Eclipse有没有好的资源包编辑插件?我正在寻找的主要功能是可以查看不同语言的bundle中是否存在相同的key。例如,如果我有两个文件bundle_en_US.properties和bundle_sv_SE.properties并且它们的键不匹配,eclipse将显示错误。我似乎记得这是Eclipse中的默认功能,但我似乎无法让它工作。 最佳答案 这看起来很有希望:EclipseResourceBundleEditorEclipsepluginforeditingJavaresourcebundles.Letsyoumanage
我在这里遇到了一种问题。我是法国人,正在开发英文版的WindowsXP。因此,我将区域选项设置为法语,但仍然有英语UI。我正在开发一个小型JavaSE应用程序,并决定使用资源包将其国际化。为了显示正确的语言,我用这个函数创建了包:privatestaticResourceBundlebundle=ResourceBundle.getBundle("locale.Strings",Locale.getDefault());但是Locale.getDefault()函数返回区域设置(意思是:法语)而不是系统UI语言。因此,我的UI在英语环境中默认为法语。好吧,这并不是我所期望的......
这是一个关于外部化错误消息的最佳实践的问题。我正在从事一个项目,我们在代码、简短描述和严重性方面存在错误。我想知Prop体化此类描述的最佳方式是什么。我想到的是将它们放在不好的代码中,将它们存储在数据库中,将它们放在属性文件中,或者可能有一个加载了描述的静态类。我想我会选择属性,但也许有更好的方法。谢谢 最佳答案 使用ResourceBundle存储这些消息(以及其他用户界面消息,例如按钮和标签文本、加速器、快捷方式等)。这是一个简短的示例,假设您有一个名为ErrorMessages的包,其中包含一个名为error.NameOfEr
我有一个扩展com.google.gwt.i18n.client.Messages类的接口(interface),我用它来在我的GWT应用程序中检索i18n消息。它看起来像这样:publicinterfaceMyMessagesextendscom.google.gwt.i18n.client.Messages{@DefaultMessage("Helloworld")@Key("message1")Stringmessage1();@DefaultMessage("Helloagain")@Key("message2")Stringmessage2();//...}通常,我使用GWT
我想将我的属性文件放在某个文件夹中,但我无法读取它们,因为我们只能在静态getBundle()中指定包名称ResourceBundle对象上的方法。假设包是:myFile.properties当前路径是:src我想将我的属性文件保存在:src/temp所以当我使用时:ResourceBundle.getBundle("temp/myfile",currentLocale);它抛出异常“找不到包”。我想要一些方法来指定路径。请建议我一些方法来做到这一点。谢谢 最佳答案 使用这个:ResourceBundle.getBundle("te
year.of.birth={0}wasbornon{1}IfIpass2000or2008to{1}thevaluegetsparsedas2,000or2,008.我不想将逗号作为翻译字符串的一部分。我应该如何避免这种情况? 最佳答案 最简单的方法是将它们作为字符串传递:msg.format("year.of.birth",name,String.valueOf(2008));另一种方法是在消息资源中指定数字格式(但我只会在格式因语言环境而异时才这样做):year.of.birth={0}wasbornin{1,number,#
这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:HowtouseUTF-8inresourcepropertieswithResourceBundle我想让我的JavaSwing应用程序国际化。我使用捆绑文件将所有标签保存在其中。作为测试,我尝试将瑞典语标题设置为JButton。所以在我写的包文件中:nextStepButton=nästa在我写的Java代码中:nextStepButton.setText(bundle.getString("nextStepButton"));但是按钮的标题字符在运行时出现错误:我使用的是支持Unicode的Tahoma字
我想在消息资源包(属性)文件中写入“Arabic”,但是当我尝试保存它时出现此错误:“保存无法完成某些字符无法使用“ISO-85591-1”字符编码进行映射。更改编码或删除字符..."谁能指导一下?我想写:global.username=اسمالمستخدم我应该如何在属性文件中写“用户名”的阿拉伯语?所以,国际化是有效的..BRSC 最佳答案 http://sourceforge.net/projects/eclipse-rbe/您可以使用上面的eclipseIDE插件为您进行Unicode转换。