Question Comment convertir une valeur NSString en NSData?


Comment puis-je convertir un NSString valeur à NSData?


881
2018-05-23 11:20


origine


Réponses:


NSString* str = @"teststring";
NSData* data = [str dataUsingEncoding:NSUTF8StringEncoding];

1377
2018-05-23 11:34



NSString *str = @"helowrld";
// This converts the string to an NSData object
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];

vous pouvez prendre référence à partir de cette lien


64
2018-03-10 12:39



Conversion NSString comme si cela va forcer un retard \0 octet, ce qui signifie NSJSONSerialization:JSONObjectWithData et d'autres échoueront à moins que vous ne l'enleviez.

C'est à dire. faire

NSData* data = [yourString dataUsingEncoding:NSUTF8StringEncoding];

et alors

data = [data subdataWithRange:NSMakeRange(0, [data length] - 1)];

alors n'hésitez pas à poursuivre NSJSONSerialization:JSONObjectWithData.


29
2017-10-25 19:47



En cas de venue de Swift Developer,

convertir NSString / String en NSData

var _nsdata = _nsstring.dataUsingEncoding(NSUTF8StringEncoding)

20
2018-03-03 15:28



Objectif c:

NSString *str = @"test string";
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:str];
NSString *thatStr = [NSKeyedUnarchiver unarchiveObjectWithData:data];

Rapide:

let str = "test string"
let data = NSKeyedArchiver.archivedData(withRootObject: str)
let thatStr = NSKeyedUnarchiver.unarchiveObject(with: data) as! String

16
2018-03-26 23:03



Tout d'abord, vous devriez utiliser dataUsingEncoding: au lieu de passer par UTF8String. Vous n'utilisez que UTF8String quand vous avez besoin d'un C chaîne dans cet encodage.

Puis pour UTF-16, juste passer NSUnicodeStringEncoding au lieu de NSUTF8StringEncoding dans ton dataUsingEncoding: message.


11
2017-09-13 08:02



NSString *str = @"hello";
NSData *data = [NSData dataWithBytes:str.UTF8String length:str.length];

6
2017-11-27 17:46



Pour Swift 3, vous allez surtout être en train de convertir String à Data.

let myString = "test"
let myData = myString.data(using: .utf8)
print(myData) // Optional(Data)

6
2017-11-01 07:59



NSString *str = @"Banana";
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:true];

1
2018-04-13 21:37