如何删除从Web服务返回的无法识别的字符?

Jay*_*ren 3 java xml encoding parsing android

我正在开发一个叫休息网络服务的应用程序.有时,xml响应包含手机无法显示的字符.显示这些字符时,会显示一个空框.我想过滤掉这些字符.如何检测字符是否能够在屏幕上显示?

一些特定字符包括:

http://www.fileformat.info/info/unicode/char/0094/index.htm http://www.fileformat.info/info/unicode/char/0080/index.htm http://www.fileformat.信息/资讯/ Unicode的/炭/ 0092/index.htm的

sta*_*ker 5

Android支持以下编码

  • Xml.Encoding ISO_8859_1
  • Xml.Encoding US_ASCII
  • Xml.Encoding UTF_16
  • Xml.Encoding UTF_8

US_ASCII不应该有任何问题.

对于ISO_8859_1,你应该检查wiki 的控制字符0x00-0x1f和0x7f-0x9f并过滤它们.当然使用匹配的字体.

使用UTF_8或16更复杂,阅读Joels 绝对最低每个软件开发人员绝对必须知道Unicode和字符集

您可能会发现此邮件列表很有用.