繁体   English   中英

如何使用Html.fromHtml在android中显示心脏标志

[英]How to show heart sign in android using Html.fromHtml

在我的应用程序中,我从服务器获取一些数据,数据可能包含一些像心脏等的unicode字符。

现在,我可以使用unicode格式显示黑心符号

String str = "\u2764";//unicode character for black heart
TextView txtv = (TextView)findViewById(R.id.txtv);
txtv.setText(txtv.getText()+str);

但我正在设置这样的文字:

holder.txt_cardDesc.setText(Html.fromHtml(cardsDataClass.getCarddesc()));

cardsDataClass.getCarddesc()返回“â¥所有即将改变,圣诞节快到了,我们向所有人祈求上帝......”

我应该把'â'¥'作为服务中的心脏符号。

如何以unicode格式显示此特殊字符,或者如果需要在心脏符号中显示?

这个格式是这个文本显示?? 是HTML / XML格式还是Klingonese字符,我对此一无所知。

如何在android中使用Html.fromHtml显示心脏标志?


编辑:从服务中我可能得到不同的特殊字符,如“'”或“&”,但我得到的是“—而不是“'”,“Ã¥”而不是“♥”

有没有办法检查所有文本并在android中显示正确的特殊字符?


编辑2:任何人都可以告诉我如何在这个字符串的位置显示心脏符号和撇号

String desc = "âÂÂ¥heart icon check, €™ apostrophe check";

我已经使用了所有这些程序:

byte[] bytes = desc.getBytes("UTF-8");              
String s2 = new String(bytes, "UTF-8"); // Charset with which bytes were encoded
txtv.setText(s2);

final String s2 = new String(desc.getBytes(), "UTF-8");
txtv.setText(s2);

String s2 = URLDecoder.decode(desc, "UTF-8");
txtv.setText(s2);

byte[] data = desc.getBytes("UTF-8");
String base64 = Base64.encodeToString(data, Base64.DEFAULT);
byte[] data1 = Base64.decode(base64, Base64.DEFAULT);
String text = new String(data1, "UTF-8");
txtv.setText(text);

但它们都没有工作,如何以实际格式显示UTF-8文本格式

谢谢

你可能会对Java Character和Android Character感到困惑。

让你的cardsDataClass.getCarddesc()返回:

“\\ u2764很快就会改变,圣诞节快到了,我们向所有人祈求上帝......”

心脏应该显示得很好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM