如何使用 Gradle 自动转义 Java 属性文件中的 unicode 字符?
Posted
技术标签:
【中文标题】如何使用 Gradle 自动转义 Java 属性文件中的 unicode 字符?【英文标题】:How to automatically escape unicode characters in Java property files using Gradle? 【发布时间】:2016-10-10 08:03:48 【问题描述】:我正在翻译 Java 应用程序,方法是使用 ResourceBundle
和各种 *.properties
文件。现在我喜欢有一个 Gradle 任务或者想要修改一个任务来自动转义任何 unicode 字符,方法是将它替换为它的 ASCII 表示,一些就像 Java 的 native2ascii
工具一样。
这是我目前对构建文件所做的工作,但输出仍未转义:
import org.apache.tools.ant.filters.EscapeUnicode
tasks.withType(ProcessResources)
filesMatching('**/*.properties')
println "\t-> $it"
filter EscapeUnicode
感谢您的帮助。
【问题讨论】:
【参考方案1】:您可以通过这种方式为属性文件提供额外的副本规范:
import org.apache.tools.ant.filters.EscapeUnicode
tasks.withType(ProcessResources).each task ->
task.from(task.getSource())
include '**/*.properties'
filter(EscapeUnicode)
【讨论】:
这是救命稻草。以上是关于如何使用 Gradle 自动转义 Java 属性文件中的 unicode 字符?的主要内容,如果未能解决你的问题,请参考以下文章
配置gradle :将properties文件转换为扩展属性
如何在 build.gradle 文件中设置属性以在 Java 中访问该属性