显示特殊字符\ u {n}

时间:2017-06-25 19:27:53

标签: swift macos

无法找到解决方案;这是行不通的... 我已经在这几个小时了...一点帮助会让我有机会在没有梦魇的情况下入睡...... 错误在哪里?

    let num: Int = 128150                       // smiley = "\u{1F496}"  =>  128150
    var str: String = String(num, radix: 16)
    str = str.uppercased()
    var wkHex: String = "\\u{"+str+"}"          // wkHex = "\u{"+str+"}"  not match
    wkHex.characters.removeFirst(0)             // remove "\" unnecessary at startIndex
    let cnt = wkHex.characters.count
    let zzz: Array = Array(wkHex.characters)
    var car: String = ""
    for i in 0...cnt - 1 {
        car.append(zzz[i])
    }
    outputChar.stringValue = car                // outputChar  is a Label (NSTextField)

    // output : \u{1F496} !    instead of : 

2 个答案:

答案 0 :(得分:1)

所以我的想法是从代码点转到角色?

    let iii = 128150
    let char = Character(UnicodeScalar(iii)!)
    print(char) // 

答案 1 :(得分:0)

Swift只允许您在编译时使用 node.js v4.2.6 express 4.15.3 socket.io 1.7.3 语法。这意味着当\u{...}的值已知时,字符串不会在运行时变为表情符号。

为此,您可以使用num

UnicodeScalar