如何在Android strings.xml中写入字符和


430

我在strings.xml文件中写了以下内容:

<string name="game_settings_dragNDropMove_checkBox">Move by Drag&Drop</string>

我收到以下错误:

The reference to entity "Drop" must end with the ';' delimiter.

如何在string.xml中写字符&?


6
在android studio中,您只需按即可Alt+Enter为您进行转换。
Rumit Patel

Answers:




55

这是我的问题,我的解决方法是如下:使用&gt;<&lt;>&amp;&"'"'&quot\"\"


1
由于更改很小,因此无法编辑,而留下评论。它应显示为 Use &gt; for >, &lt;for <
Jose_GD

13

即使您的问题得到了回答,我仍然想告诉更多这样的实体。这些是html entities,因此在android中,您将像这样编写它们:

在下面替换为:

& with &amp;
> with &gt;
< with &lt;
" with &quot;, &ldquo; or &rdquo;
' with &apos;, &lsquo; or &rsquo;
} with &#125;

9

应该是这样的:

<string name="game_settings_dragNDropMove_checkBox">Move by Drag&amp;Drop</string>


4

您也可以将字符串的内容放入XML CDATA中,就像Android Studio为您提供的一样 Extract string resource

<string name="game_settings_dragNDropMove_checkBox"><![CDATA[Move by Drag&Drop]]></string>


3

这可能很旧了。但是对于那些正在寻找快速代码的人。

 public String handleEscapeCharacter( String str ) {
    String[] escapeCharacters = { "&gt;", "&lt;", "&amp;", "&quot;", "&apos;" };
    String[] onReadableCharacter = {">", "<", "&", "\"\"", "'"};
    for (int i = 0; i < escapeCharacters.length; i++) {
        str = str.replace(escapeCharacters[i], onReadableCharacter[i]);
    } return str;
 }

处理转义字符,您可以在它们各自的数组上添加字符和符号。

-干杯



2

为避免该错误,请使用提取字符串:

<string name="travels_tours_pvt_ltd"><![CDATA[Travels & Tours (Pvt) Ltd.]]></string>

这是最好的解决方案!
法比

0

Mac和Android Studio用户:

在string.xml或布局中键入您的字符(例如&),然后选择“选项”和“返回”键。 请参考屏幕截图

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.