Ich konvertiere folgende UInt8-Array zu String in swift und bekommen nil jedes Mal. Was ich tun sollte ?? Bitte hilf mir.Umwandlung von UInt8 zu String in swift
[ 201, 201, 87, 200, 204 ]
let decData = NSData(bytes: mydata, length: Int(mydata.count))
let result1 = NSString(data: decData, encoding: NSUTF8StringEncoding)
Edited: I InflateStream/DeflateStream bin mit meinen Daten zu komprimieren. Der Rückgabetyp von deflateStream ist UInt8. Ich habe versucht, diesen Wert in eine Zeichenfolge zu konvertieren, so dass ich es an den Server senden kann.
Dies ist mein Code
let string = "hello"
let data: [UInt8] = Array(string.utf8)
// compress
var deflater = DeflateStream()
var (deflated, err) = deflater.write(data, flush: true)
if err != nil{
fatalError("\(err!)")
}
print(" ***** deflater: \(deflated)")
// decompress
var inflater = InflateStream()
var (inflated, errr) = inflater.write(deflated, flush: true)
if errr != nil{
fatalError("\(errr!)")
}
print(" ***** inflated: \(inflated)")
Das Array repräsentiert Zeichen? Welche Ausgabe erwartest du * für 'result1'? "" ÉÉW ""? – nhgrif
vielleicht bin ich mir nicht sicher, weil dieses Array ich nach der Komprimierung bekommen werde. Alle Möglichkeiten, wie Sie das haben, können Sie mir bitte zeigen? –
Der Code ist in meiner Antwort unten. Nach einem ASCII-Chart, das ich gerade angeschaut habe, ist das die korrekte Zeichenkette mit den vermutlich von Ihnen angegebenen ASCII-Werten. – nhgrif