我正在Android中做一些翻译工作,但遇到了一个错误。
我有一个句子和一个日期在这种格式。
\'Estimated Time: \'h:mm a
这个很好用。
然而,翻译成法语时,在“d‘’attente”一词中增加了一个撇号。
\'Temps d\'attente estimé: \'h:mm a
这最终会提前终止字符串文字,而我的日期格式化程序也会崩溃。
有没有办法在我的strings.xml文件中有带撇号的句子和日期格式?
提前感谢!
编辑:
这是logcat的信息,
java.lang.IllegalArgumentException: Unknown pattern letter: t
at org.threeten.bp.format.DateTimeFormatterBuilder.parsePattern(DateTimeFormatterBuilder.java:1470)
at org.threeten.bp.format.DateTimeFormatterBuilder.appendPattern(DateTimeFormatterBuilder.java:1382)
at org.threeten.bp.format.DateTimeFormatter.ofPattern(DateTimeFormatter.java:788)
at com.brunswickbowling.sync.passport.extensions.ContextExtKt.getDateTimeFormatter(ContextExt.kt:41)
at com.brunswickbowling.sync.passport.extensions.TextViewExtKt.setText(TextViewExt.kt:98)
不知道为什么要得到Unknown pattern letter: t
,但是当我移除d‘’attente中的撇号时,它工作得很好。可能是
这是XML格式,
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools">
<string name="format_waitlist_eta">\'Temps d\'attente estimé: \'h:mm a</string>
</resources>
编辑和回答:
结果表明,不提前终止字符串需要第四个\'
。因此,字符串最终看起来像\'Temps d\'\'attente estimé: \'h:mm a
。
发布于 2020-08-28 15:04:11
您可以始终使用xml中禁止的文字替换选项,尝试使用& apos;替换撇号,并忽略一个特殊字符,这样您的字符串就会变成
\'Temps d\' attente estimé: \'h:mm a
https://stackoverflow.com/questions/63640860
复制