简体   繁体   English

将表情符号编码为字符串

[英]Encode Emoji to string

I want to encode this emoji 😈 to string: 我想将此表情符号encode编码为字符串:

I have tried like this: 我已经这样尝试过:

let data = self.comment.dataUsingEncoding(NSNonLossyASCIIStringEncoding, allowLossyConversion: true)
if let data = data {
   let emojiString = NSString(data: data, encoding: NSUTF8StringEncoding) as! String
       self.comment = emojiString
}

but it doesn't work. 但这不起作用。

在此处输入图片说明

I want to encode like 😈 我想编码为😈 , not \?\? ,而不是\?\?

So how to do this? 那么该怎么做呢?

128520 is the unicode scalar value of "😈": 128520是“😈”的Unicode标量值

let text =  "😈😀"

let encoded = text.unicodeScalars.map {
    "&#" + String($0.value) + ";"
}.joinWithSeparator("")

print(encoded) // 😈😀

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

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