Swift version: 5.0
If you know an instance of
Data contains a
String and you want to convert it, you should use the
String(decoding:as:) initializer, like this:
let str = String(decoding: data, as: UTF8.self)
Data instance can’t be converted to a UTF-8 string, you’ll get sent back an empty string. This means you do need to know which format is used to store the string, but UTF-8 is usually the best to go with.
Available from iOS 8.0
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.