none
FontIcon 的Glyph="\u1F575"在后台代码里这样赋值会被截断 RRS feed

  • 问题

  • 前面\u1F57变成了正常的图标,最后的5会变成字符

    根本不是我想要的,这个要怎么处理啊,没想到办法

    前台🕵是正常的

    var t = Encoding.Unicode.GetString(Encoding.Unicode.GetBytes("\u1F575"));

    我这样取了下他的值,和Glyph="\u1F575"是一样的结果都只取了前4位的第五位直接就把5当字符串了




    • 已编辑 Enious 2016年8月23日 4:24
    2016年8月22日 13:59

答案

全部回复

  • 你用UTF8试一下

    新浪微博http://weibo.com/xianglitian,欢迎围观

    2016年8月23日 4:45
    版主
  • 版主大大,没太明白,您是这把\u1f575转码为utf8吗?但是这个问题最为难的就是\u一用字符串就只取前4位

    不知道前台的Glyph=🕵  是怎么处理的,实际上🕵和\u1F575是一个东西。


    2016年8月23日 5:32
  • 用encoding.utf8.getstring试试效果

    新浪微博http://weibo.com/xianglitian,欢迎围观

    2016年8月23日 5:42
    版主
  • Encoding.UTF8.GetString(Encoding.UTF8.GetBytes("\u1F575"));
    和直接赋值一样的结果
    Encoding.UTF8.GetString(Encoding.Unicode.GetBytes("\u1F575"));
    结果是W5

    2016年8月23日 5:54
  • 我给你看个在CS的代码图

    您看,只要用了\u就截断了,只取4位,

    要是不用\u给Glyph赋值,那到UI上九直接是字符串显示。

    我是这样用的。

    var t = Encoding.Unicode.GetString(Encoding.Unicode.GetBytes("\u1F575"));

    这段代码其实是我用来测试这个问题的,我想看下到底这个\u1f575是不是和直接赋值是一样的。

    这个字符代码是在下面的一个叫字符大全集的UWP APP里获取的


    • 已编辑 Enious 2016年8月23日 6:02
    2016年8月23日 5:58
  • ?????
    • 已建议为答案 [-] 2016年8月23日 10:35
    • 已标记为答案 shao.mengModerator 2016年8月24日 1:44
    • 已编辑 [-] 2018年1月11日 12:41
    2016年8月23日 10:35
  • 感谢两位的无私帮助,C#里面,使用Glyph = "\U0001F575"这样就行了

    我都改用Image了打算- -;


    • 已标记为答案 Enious 2016年8月23日 11:00
    • 已编辑 Enious 2016年8月23日 12:42
    2016年8月23日 10:52