Swift: Comment faire pour convertir un String array UInt8?
Comment voulez-vous convertir un String array UInt8?
var str = "test"
var ar : [UInt8]
ar = str
Vous devez vous connecter pour publier un commentaire.
Comment voulez-vous convertir un String array UInt8?
var str = "test"
var ar : [UInt8]
ar = str
Vous devez vous connecter pour publier un commentaire.
Beaucoup de façons différentes, en fonction de la façon dont vous souhaitez gérer les caractères non-ASCII.
Mais le code le plus simple serait d'utiliser le
utf8
vue:Remarque, cela entraînera des caractères multi-octets sont représentés comme des multiples entrées dans le tableau, c'est à dire:
imprime
[195, 169]
Il y a aussi
.nulTerminatedUTF8
, qui fait la même chose, mais ajoute un nul caractères à la fin, si votre plan est de passer quelque part comme une chaîne C (si vous faites cela, vous pouvez probablement aussi utiliser.withCString
, ou simplement utiliser la conversion implicite pour comblé les fonctions C.swift 4
J'en suis venu à cette question, à la recherche de comment convertir un
Int8
tableau. C'est de cette façon que je suis en train de faire, mais il y a certainement une moins loopy façon:Méthode sur une Extension pour
String
Remarque: l'enregistrement d'une codé en UTF-16 caractères (2 octets) dans un Int8 (1 octet) conduira à une perte d'information.
Int
si j'avais un choix et de laisser iOS faire le tri.