【发布时间】:2016-08-17 19:45:00
【问题描述】:
我之前问过similar question Swift,现在我在 Android/Java 中遇到了同样的问题。
Java 中有没有办法在字符串中添加引号?引号应根据用户的语言设置正确本地化(请参阅https://en.wikipedia.org/wiki/Quotation_mark)。文本不带引号存储在数据库中。添加引号后,我想在 TextView 中显示字符串。
例如:
String quote = "To be or not to be..."
// one or more lines of code that add localized quotation marks
// to the beginning and the end of the string
mMyTextView.setText(stringWithQuotes);
对于法国用户:«To be or not to be...»
对于德国用户:„成为或不成为...“
对于英语(美国)用户:“To be or not to be...”
【问题讨论】:
-
@Reimeus 这并没有设置 OP 正在讨论的各种类型的引号。只是英文引号。
-
stackoverflow.com/questions/17433667/… 是 Java 的答案。不过
LocaleData似乎不在集成到Android 7.0的ICU4J子集中,也不知道ICU4J本身是否可以在Android上运行。 -
@CommonsWare 很有趣,谢谢。我会检查我是否可以使用它。
-
快速浏览了一些关于 ICU4J 的信息。如果可能的话,在 Android 上使用它看起来并不那么简单。使用一些
if语句可能更容易处理它,尤其是在支持的语言环境数量相当少的情况下。无论如何感谢您的指针。 -
@SusannahPotts 是的。你回复的评论在我看到它之前就被删除了,但我想它只是在逃避“工程报价”。这里也许应该提到的是,即使在英语中,它们在印刷上也是不正确的。我相应地更正了这个问题。
标签: java android localization quotation-marks