从右到左阅读的语言的 Java 消息属性选择

标签 java properties-file

我的应用程序需要支持大约 30 种语言。我为他们每个人提供了一些相当简单的文本,但在该文本中我确实需要使用 {0, choice, 0# ...|0<...}

做出一个选择

目前我什至还没有测试这是否有效,因为我在说服我的文本编辑器允许我合并从左到右和从右到左的文本时遇到了很多麻烦,但我真正想要的是知道这是否可能......

问题:是否可以将 Java 消息属性嵌入选择与从右到左流动的语言一起使用。

如果有人能想到用于此问题的任何其他标签,我将不胜感激。

最佳答案

简短的回答是有可能。这是一个棘手的问题,但 BIDI(双向)支持是文本编辑器的问题,而不是您的问题。所以如果你的文本编辑器支持它(大多数编辑器支持)那么它是可能的。首先,您必须确保使用支持多种语言的编码(字符集)——推荐使用 UTF-8(但也可以使用 UTF-16,其他一些可能也可以),而不是 ISO-8859-X(其中 X是一个数字),仅支持 2 种语言。您还可以将字符串作为 unicode 序列写入属性文件或代码中的任何位置。

有一个开源 java 库 MgntUtils,它有一个实用程序,可以将任何语言的字符串(包括特殊字符和表情符号转换为 unicode 序列,反之亦然):

result = "Hello World";
result = StringUnicodeEncoderDecoder.encodeStringToUnicodeSequence(result);
System.out.println(result);
result = StringUnicodeEncoderDecoder.decodeUnicodeSequenceToString(result);
System.out.println(result);

这段代码的输出是:

\u0048\u0065\u006c\u006c\u006f\u0020\u0057\u006f\u0072\u006c\u0064
Hello World

图书馆可以在 Maven Central 找到或在 Github它以 Maven 工件的形式出现,并带有源代码和 javadoc

这是类 StringUnicodeEncoderDecoder 的 javadoc

关于从右到左阅读的语言的 Java 消息属性选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56107308/

相关文章:

java - 使用 Freemarker 生成 Java .properties 文件

java - 如何验证是否使用任何参数调用了方法?

Java - 如何获取已安装 RPM 包的列表

jquery - 在Grails中使用jquery.i18n.properties.js

java - 如何从属性文件转换数据并设置为列表属性(使用 PropertyPlaceholderConfigurer)?

java - ReloadableResourceBundleMessageSource中setDefaultEncoding的作用是什么

ios - 如何在 plist 中添加预定义值?

java - 使用 Maven 运行远程命令

java - Tomcat 更新 context.xml 但不应该

java - Java线程执行顺序