我尝试创建一个常规脚本来更新我的翻译数据库中的Android strings.xml文件,但是当翻译后的字符串包含引号时,我无法获得有效且有效的xml输出。
示例:
import groovy.xml.XmlUtil
def xml = "<xml><node>the example</node></xml>"
def parser = new XmlParser().parseText(xml)
parser.node[0].value = "l'éxemple"
println new XmlUtil().serialize(parser) // Invalid, quote character isn't escaped
parser.node[0].value = "l'éxemple"
println new XmlUtil().serialize(parser) // Quote character is now escaped twice (&apos;)
已解决,感谢@dagget
parser.node[0].value = "l'éxemple".replaceAll("'", "\\\\'")