Android表情输入相关问题

2016-12-14  本文已影响0人  V1tas

Android输入法中自带emoji表情,emoji的输入是一个头疼的问题!!!

所遇到的问题
按理说,安卓客户端输入表情传到服务端,服务端不作处理,无法解析,显示为空就可以了。但是我遇到了问题是获取的表情信息不为空,是一大串html,问后台他也不知道咋回事。。这让我很是无奈,只好想办法解决。

解决方案

方法三实现思路


上代码

 public static String emoji(String s) {
    return unicode2String((toUnicode(s).replace("\\ud83d", "").replace("\\ud83e", "").replace("\\ud83c", "")));   }

//String转Unicode
public static String toUnicode(String string) {
StringBuffer unicode = new StringBuffer();
for (int i = 0; i < string.length(); i++) {
    // 取出每一个字符
    char c = string.charAt(i);
    // 转换为unicode
    unicode.append("\\u" + Integer.toHexString(c));
}
return unicode.toString();}

//Unicode转String
public static String unicode2String(String unicode) {
StringBuffer string = new StringBuffer();
String[] hex = unicode.split("\\\\u");
for (int i = 1; i < hex.length; i++) {
    // 转换出每一个代码点
    int data = Integer.parseInt(hex[i], 16);
    // 追加成string
    string.append((char) data);
}
return string.toString();}

这种方法虽然解决了程序不崩溃的问题,但是输入的表情乱码显示肯定也是不合适的...
所以,求指点更好地解决办法!!!!

上一篇 下一篇

猜你喜欢

热点阅读