46

我想知道是否可以将 XML 放入其中/res/values/strings.xml?我问这个是因为我正在检查我的应用程序的 XML 数据文件,如果它还不存在,那么它会从将包含为字符串资源的默认内容创建它。

当使用 GUI 编辑字符串时,Eclipse 会尝试将小于和大于标记更改为相应的 HTML 实体。日食在正确的轨道上吗?因为我应该认为它也会作为 HTML 实体写入我的文件中。我可以使用getText()而不是getString()将实体转换回标签吗?

4

3 回答 3

84

是的,您可以,只需使用 CDATA

<string name="stringName1"><![CDATA[<html>bla</html>]]></string>

于 2010-12-20T13:36:19.360 回答
2

除非您在其中转义字符,例如 < 或 > 或 &,否则它显然不起作用。

如果您对 XML 进行编码,它应该可以正常工作,但可能不是最好的方法。我更喜欢二进制资源。


对于放入 string.xml,您可以使用编码

String encoded = URLEncoder.encode(xml);

而解码则相反。

对于二进制文件,你将它放在 RAW 文件夹中,你会得到一个二进制流并将其转换为字符串并加载。

于 2010-12-20T13:31:24.697 回答
2

我已经这样做了:

将您的字符串放入strings.xml

<string name="my_string"><![CDATA[Your long text here]]></string>

如何使用:

<TextView
    android:id="@+id/textView"
    android:text="@string/my_string"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

完毕

于 2013-04-11T06:54:36.783 回答