如何写字符&在android strings.xml中

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

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

我得到了以下错误:

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

我怎么写字符?在strings.xml?

324643 次浏览

编码:

&amp;

对于特殊字符,我通常使用Unicode定义,对于'&',例如:\u0026,如果我是正确的。这是一个很好的参考页面:http://jrgraphix.net/research/unicode_blocks.php?block=0

也可以将字符串的内容放入XML CDATA中,就像Android Studio在Extract string resource时为你做的那样

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

这可能很古老了。但对于那些寻找快速代码的人。

 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;
}

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

干杯

这是我的一个问题,我的解决方法如下:用&gt;代替>,用__abc2代替<,用&amp;代替&,用"'"代替',用&quot代替\"\"

应该是这样的:

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

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

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

你可以这样写

<string name="you_me">You &#38; Me<string>

输出:你&我

即使你的问题已经回答了,我仍然想告诉更多这样的实体。 它们是html entities,所以在android中你可以这样写:

如下所示:

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

Mac和Android工作室用户:

输入你的字符,如&在string.xml或layout中选择“Option”和“return”键。 请参考截图 < / p >

如果您想直接在xml中硬编码字符串,可以通过这种方式将其相加。

  <TextView
android:layout_marginStart="5dp"
android:layout_marginLeft="5dp"
android:layout_centerVertical="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="You &amp; Me"

我发现的最简单的方法是将'&'替换为Unicode的等效字符。对于上面给出的例子,写如下:

<string name="game_settings_dragNDropMove_checkBox">Move by Drag\u0026Drop</string>

我发布这个是因为上面的编码都不适合我。

我发现用序列替换&:&#38;可以作为xml字符串资源。如:

<string name="webLink"><a href="https://www.example.com?param1=option1&#38;param2=option2">click here</a></string>

,在像这样的字符串:

<string name="string_abc">Translate &amp; Scan Objects</string>

输出将是:

翻译,扫描对象