Unicode.Scalar
можно инициализировать только с помощью параметров определенных типов, которые вы можете найти в документах .
Я бы предложил вам использовать init(_:)
, который принимает UInt8
, что говорит о том, что данное число положительное (это необходимо для создания UnicodeScalar
).Итак, вы можете попытаться привести ваш Int8
к UInt8
, и тогда ваш инициализатор примет параметр правильного типа
let int: Int8 = data[i]
if let uint = UInt8(exactly: int) {
let char = Character(UnicodeScalar(uint))
}