在strings.xml中使用Unicode字符

时间:2016-04-16 16:12:12

标签: android string unicode

我想在字符串中使用以下unicode字符:

我通过this找到了它的十六进制和十进制代码:

虽然我知道如何使用"&"通过执行以下操作在%yy+中的字符串中的符号:

strings.xml

我无法使用汽车符号。

如何在strings.xml中的字符串中使用此unicode字符?

更新一次:

首次使用此解决方案后: <string name="Example">Example character &amp;</string> 我收到以下错误:&#128663;

7 个答案:

答案 0 :(得分:36)

这是

<string name="Example">Example character \u0026</string>

在此处查看更多unicode字符:

http://www.utf8-chartable.de/unicode-utf8-table.pl?number=1024&utf8=0x

答案 1 :(得分:10)

这是正确的答案,如果你去Unicode站点:https://unicode-table.com/en/#control-character并点击这个说U + 00AE的Unicode你不能写+符号如果你想复制粘贴这个例子在strings.xml :) :) :))

<string name="example">"\u00AE"</string>

答案 2 :(得分:1)

用于android strings.xml的几个重要的Unicode符号

<string name=”Rs”>\u20B9</string>
<string name=”filled_bullet”>\u25CF</string>
<string name=”linear_bullet”>\u25CB</string>
<string name=”rect_bullet”>\u25A0</string>
<string name=”blank_rect”>\u25A1</string>
<string name=”true_tick”>\u2713</string>
<string name=”star”>\u2605</string>

完整链接为here

答案 3 :(得分:0)

我认为您示例中的代码点是ellipsis。根据{{​​3}},尝试

    &#128663;

答案 4 :(得分:0)

如果尽管有人不注意而在下划线处加了空格,则可以通过使用unicode代码空间来避免这种情况

例如:

<string name="conditions">By signing in you agree to our <u>Terms &amp; 
Conditions.</u></string>

还将在“条款和条件”前加下划线

解决方案:

<string name="conditions">By signing in you agree to our\u0020<u>Terms &amp; 
Conditions.</u></string>

答案 5 :(得分:0)

检查XML是否为UTF-8,并且具有<?xml ... encoding="UTF-8"?>或默认值为<?xml ... ?>

首先,Unicode代码点为U + 1F695,十进制为128661(不是... 3)。

在XML内容中,您的方法基本上是正确的。

&#128661;
&#x1F695;

该错误提到“已修改”的UTF-8。这只是意味着代码点U + 0000(二进制0)也被编码为具有高位设置的多字节字节序列。这是对C的支持,其中“字符串”以NUL字节结尾。

由于TAXI代码点需要4个UTF-8字节,因此可能是Android上的XML仅支持较短的UTF-8序列。至少对于数字实体&#...;

如果实体有问题,请使用支持UTF-8的编辑器,然后从剪贴板粘贴TAXI。

您可以尝试是否有一种解决方法,是否可以读取u逃逸的字符(可能不是)

\uD83D\uDE95 

最后一次疯狂的尝试是使用

<?xml version="1.1" ...

答案 6 :(得分:0)

<string name="ic_happy_font">&#xe902;</string>

<string name="edit">?</string>