通过Eclipse 添加一个字符串文件strings.xml:
1.问题描述
- Error in an XML file: aborting build.
- The entity name must immediately follow the ‘&’ in the entity reference.
PS: 很明显地指出了 使用 ‘&’ 导致 出错
2.分析原因:
- 在string.xml中如果想要显示特殊字符,如空格号、换行等字符,需要用到转义字符(如/n 代表换行)或者UNICODE编码(如\u00A0表示空格)来替代,前者可能兼容性没有那么好,通常使用后者,比较通用性,而且支持的字符集也更多
- 另外从网上搜索了点资料,可以作为参考
【在android的项目中要在string.xml 中显示特殊符号】
在android的项目中要在string.xml 中显示特殊符号、如@号冒号等、直接写
有时候不行,那么可以考虑使用ASCII码进行显示、在XML中空格符不是用HMTL中的表示、而是用编码表示
以上摘自:http://blog.csdn.net/wh_19910525/article/details/48088307
【我的Android进阶之旅------>android中一些特殊字符(如:←↑→↓等箭头符号)的Unicode码值】
在项目中,有时候在一些控件(如Button、TextView)中要添加一些符号,这个时候可以使用图片的方式来显示,不过这些可以直接使用Unicode码就直接显示出来了。
从网上找到了部分关于特殊符号的Unicode码值,记录下来,以备后用,如下所示:
用Android的string.xml中使用Unicode表示符号的话,就使用下面的JS相关的Unicode值即可
以上摘自:http://m.blog.csdn.net/article/details?id=
因此这边的错误提示,是因为字符串【&# 160;&# 160;&# 160;&# 160;&# 160;Sms & Arama&# 160;&# 160;&# 160;&# 160;&# 160;】中的【Sms & Arama】中的【 & 】出现问题
PS:其中【&# 160】表示的是 ” “,即一个空格 的字符串意思,最终也是以一个空格显示出来
3.解决方法:
- 直接将 & 替换成 &
- 也可以将 & 替换成 & amp; 或者 \u0026 或者 \0026 (未测试,可以自己测试下,至少编译不会出错,呵呵) 4.再出个题: 以上是什么问题导致的?
其实这个题目有2个解决方案,其中一个就是本篇讲到的内容,还有一个方案就是 jdk的版本问题。
5.附上表格:
关于unicode编码都是/u开头,网上可以直接在线工具
关于转义字符,可以看下以下表格:
转载请注明出处:http://blog.csdn.net/ljb568838953/article/details/52527872