如何将 Swift 中的字符串转换为 unicode(UTF-8) 字符串?

How to convert string to unicode(UTF-8) string in Swift?

如何将 Swift 中的字符串转换为 unicode(UTF-8) 字符串?

在Objective我可以这样写:

NSString *str = [[NSString alloc] initWithUTF8String:[strToDecode cStringUsingEncoding:NSUTF8StringEncoding]];

如何在 Swift 中做类似的事情?

使用此代码,

let str = String(UTF8String: strToDecode.cStringUsingEncoding(NSUTF8StringEncoding))

希望对您有所帮助

Swift 4 和 5 我创建了一个字符串扩展

extension String {
    func utf8DecodedString()-> String {
        let data = self.data(using: .utf8)
        let message = String(data: data!, encoding: .nonLossyASCII) ?? ""
        return message
    }
    
    func utf8EncodedString()-> String {
        let messageData = self.data(using: .nonLossyASCII)
        let text = String(data: messageData!, encoding: .utf8) ?? ""
        return text
    }
}

Swift 4:

let str = String(describing: strToDecode.cString(using: String.Encoding.utf8))