NSString dəyərini NSData çevirmək üçün necə?

NSString dəyərini NSData çevirmək üçün NSData ?

883
23 мая '09 в 14:20 2009-05-23 14:20 Anish , 23 May 'da 14:20' da təyin olundu
@ 10 cavab
 NSString* str = @"teststring"; NSData* data = [str dataUsingEncoding:NSUTF8StringEncoding]; 
1378
23 мая '09 в 14:34 2009-05-23 14:34 Flitzwald tərəfindən 23 May 'da 14:34' də cevap verildi, 2009-05-23 14:34
 NSString *str = @"helowrld"; // This converts the string to an NSData object NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding]; 
border=0

linkdən istifadə edə bilərsiniz

64
10 марта '15 в 15:39 2015-03-10 15:39 Cavab ALOK KUMAR tərəfindən verilir. Mart 10 '15' da 15:39 'da, 2015-03-10 15:39

Bu kimi bir NSString konvertasiya byte \0 , NSJSONSerialization:JSONObjectWithData deməkdir ki, silmək halda başqaları uğursuz olacaq.

yəni, etmək

 NSData* data = [yourString dataUsingEncoding:NSUTF8StringEncoding]; 

və sonra

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

sonra NSJSONSerialization:JSONObjectWithData davam etmək üçün NSJSONSerialization:JSONObjectWithData .

29
25 окт. Cavab 25 oktyabrda Andrew Kolesnikov tərəfindən verilir . 2011-10-25 22:47 '11 at 22:47 2011-10-25 22:47

Swift Developer,

NSString / String'den NSData p> 'ya çevirmək

 var _nsdata = _nsstring.dataUsingEncoding(NSUTF8StringEncoding) 
20
03 марта '15 в 18:28 2015-03-03 18:28 Sert A.Suk tərəfindən verilmiş cavab 03.03.2014 18:28

Məqsəd-C:

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

Swift:

 let str = "test string" let data = NSKeyedArchiver.archivedData(withRootObject: str) let thatStr = NSKeyedUnarchiver.unarchiveObject(with: data) as! String 
16
27 марта '16 в 2:03 2016-03-27 02:03 cavab Şəmsəddin 27 mart '16, 2:03 2016-03-27 02:03 'də verilir

Birincisi, dataUsingEncoding: istifadə dataUsingEncoding: bir UTF8String keçmək əvəzinə. Bu kodlaşdırmada C UTF8String lazım olduğunda yalnız UTF8String istifadə UTF8String .

Daha sonra UTF-16 NSUnicodeStringEncoding keçmək NSUnicodeStringEncoding əvəzinə dataUsingEncoding: mesajı dataUsingEncoding: .

11
13 сент. Jerry Thomsan tərəfindən verilmiş cavab 13 sentyabr 2012-09-13 11:02 '12 at 11:02 2012-09-13 11:02
 NSString *str = @"hello"; NSData *data = [NSData dataWithBytes:str.UTF8String length:str.length]; 
6
27 нояб. cavab Nex Mishra tərəfindən verilir . 2015-11-27 20:46 '15 saat 20:46 'də 2015-11-27 20:46

Swift 3 üçün əsasən String dən Data çevriləcəkdir.

 let myString = "test" let myData = myString.data(using: .utf8) print(myData) // Optional(Data) 
6
01 нояб. cavab jacks205 01 noyabr verilir . 2016-11-01 10:59 '16 saat 10:59 'da 2016-11-01 10:59
 NSString *str = @"Banana"; NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:true]; 
1
14 апр. Kamani Jasmin tərəfindən aprelin 14-də cavab verildi 2018-04-14 00:37 '18 'də 0:37' də 2018-14-14 00:37 'də

Məqsəd c

 NSString *str = @"Hello World"; NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:NO]; 

sürətlə

 let str = "Hello World" let data = string.data(using: String.Encoding.utf8, allowLossyConversion: false) 
0
17 апр. Cavab Rohit Makwana Apr 17 2018-04-17 09:19 '18 saat 9:19 'da