Fra*_*lli 9 xml string android code-injection
我想知道是否有一种方法可以将<string>XML文件中定义的元素插入/注入到另一个<string>元素中,只需使用XML即可.
例如,我可以:
<string name="author">Francesco</string>`
Run Code Online (Sandbox Code Playgroud)
我正在寻找类似的东西:
<string name="about_application">Author: @string/author</string>`
Run Code Online (Sandbox Code Playgroud)
这getString(R.string.about_application)将导致"作者:Francesco".
我知道我可以使用String.format(string, formatArgs)例如Java代码中的两个元素组合:
<string name="author">Francesco</string>
<string name="about_application">Author: %1$s</string>`
Run Code Online (Sandbox Code Playgroud)
然后在代码中使用
String.format(getString(R.string.about_application), getString(R.string.author))
Run Code Online (Sandbox Code Playgroud)
但是我想直接用XML来做.
任何人都可以建议我这样做吗?
Mad*_*sen 15
如果我理解你想要做什么,那么内部(解析)的一般实体可能会帮助你实现你想要的.
如何将值"Francesco"定义为名为"auth"的实体,然后在XML中使用它的示例:
<?xml version="1.0"?>
<!DOCTYPE doc [
<!ENTITY auth "Francesco">
]>
<doc>
<string name="author">&auth;</string>
<string name="about_application">Author: &auth;</string>
</doc>
Run Code Online (Sandbox Code Playgroud)
当XML解析器读取时,文档将被解析和评估,或"看到",如下所示:
<?xml version="1.0"?>
<doc>
<string name="author">Francesco</string>
<string name="about_application">Author: Francesco</string>
</doc>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2104 次 |
| 最近记录: |