当前位置: 首页 > 面试题库 >

Java JRE:如何将本地化资源添加到标准JRE资源

荆煌
2023-03-14
问题内容

我需要JRE使用仅英语版本的JRE资源的翻译版本。

根据ResourceBundle.java文档,这很容易:使用正确的语言环境后缀添加本地化的资源。例如,标准

  • XMLSchemaMessages.properties

将成为翻译版本:

  • XMLSchemaMessages_FR.properties

等等。

编辑:此特定文件位于:com \ sun \ org \ apache \ xerces \ internal \ impl \ msg \
XMLSchemaMessages.properties

我的问题是:如何使这些额外的资源对JRE可见?

在此先感谢您的帮助。-欢呼


问题答案:

假设Xerces使用ResourceBundle来获取消息,则应在其中放置一个新文件。

com\sun\org\apache\xerces\internal\impl\msg\XMLSchemaMessages<locale>.properties

语言环境是您所需语言环境的正确标识符。

然后精确定位XMLSchemaMessages资源包的加载位置,并设置一个断点,以便您单步完成JRE中的ResourceBundle加载过程(这里建议使用JDK,因此您有运行时的源代码),然后可以看到是什么。被搜索。

注意:您在此处处理的是特定于供应商的XML解析器,这意味着它将特定于Oracle,甚至可能仅适用于某些Java版本。是否考虑引入您自己的验证XML
Parser并将其本地化?



 类似资料:
  • 前面小节我们介绍了如何设置Locale,设置好Locale之后我们需要解决的问题就是如何存储相应的Locale对应的信息呢?这里面的信息包括:文本信息、时间和日期、货币值、图片、包含文件以及视图等资源。那么接下来我们将对这些信息一一进行介绍,Go语言中我们把这些格式信息存储在JSON中,然后通过合适的方式展现出来。(接下来以中文和英文两种语言对比举例,存储格式文件en.json和zh-CN.jso

  • 我试着用kotlin DSL测试5级。 生成的是: 然后我生成了一个kotlin app,测试如下: 然后我将前面生成的lib添加到文件夹: 更新 根据收到的意见,我做了以下工作: > 将库文件移动到文件夹: 将以下代码添加到: 而不是: 但仍然得到相同的错误:(

  • 问题内容: 我正在使用简单的maven安装使用maven来构建jar。如果我添加了文件,则可以在类路径上找到它,但是它有一个config文件夹,我希望该文件进入该文件夹,但是将其移动到config文件夹中会使它从类路径中消失。 问题答案: 如果您将任何内容放置在目录中,那么默认情况下它将以final结尾。如果您是从其他项目引用它的,但是在类路径中找不到它,那么您犯了以下两个错误之一: 未正确加载(

  • 问题内容: 我需要向来自WebView的每个请求添加自定义标头。我知道有用于的参数,但这些参数仅应用于初始请求。所有后续请求均不包含标头。我已经看过所有的替代,但是没有什么允许将标头添加到资源请求- 。任何帮助都会很棒。 问题答案: 尝试 要将标头添加到资源加载请求中,请定制WebViewClient并重写:

  • 问题内容: 我想在JAR文件中包含资源文件(图像,文本文件…)。我将资产文件夹添加到类路径中,因此当我在netBeans中运行该程序时,程序运行正常。 但是,如果我构建项目,则会收到错误消息: 这是正常错误吗? 所以我试图像这样手动添加资产: 但这行不通。我有事吗?对不起,我的英语,谢谢您的帮助。 问题答案: 不要将文件放在桌面上。转到项目的Source文件夹,然后将其复制到该文件夹​​中。在Ne

  • 问题内容: 如何在netbeans项目的类路径中添加文件夹(例如,包含arts的资源文件夹)?我设法通过编辑项目的NB生成的jar文件(即其MANIFEST.MF文件+手动复制资源)来手动完成此操作,但是应该有一种方法可以告诉netbeans并注意资源,不是吗? 文件夹结构如下所示: 我不想将艺术品包装到罐子里,因为我希望艺术品可以轻松更换。如果我将art文件夹添加到src文件夹,则NB可以正常编