最近總是用到轉(zhuǎn)換成 c 的方法,很是頭疼
數(shù)組,字母,和標(biāo)點(diǎn)符號(hào)在 utf-8下都是1個(gè)字節(jié),文字是3個(gè)字節(jié)
//字符串后邊的是打印結(jié)果
//? ? NSString *str = @"123";//49 50 51
//? ? NSString *str = @"a123c";//97 49 50 51 99
//? ? NSString *str = @"的哈a123c";//231 154 132 ?229 147 136 97 49 50 51 99
//? ? NSString *str = @"的 哈a123c";//231 154 132 32 229 147 136 ?97 49 50 51 99
? ? NSString*str =@"abc.5#";//97 98 99 46 53 35
//string--> data-->byte
? ? ?NSData *testData = [str dataUsingEncoding: NSUTF8StringEncoding];//字符串轉(zhuǎn)化成 data
?? ? Byte*testByte = (Byte*)[testDatabytes];
?? ? uint8_t*bytes =malloc(sizeof(*bytes)*testData.length);
? ? for(inti=0;i<[testData length];i++)
? ? {
? ? ? ? NSLog(@"myByte = %d\n",testByte[i]);
? ? ? ? bytes[i] = testByte[i];
? ? }
//byte-->data-->string
? ? NSData*adata = [[NSData alloc]initWithBytes:bytes length:testData.length];
? ? NSString *result =[[ NSString alloc] initWithData:adata encoding:NSUTF8StringEncoding];
? ? NSLog(@"result---%@",result);//就是上邊你寫的那個(gè)字符串
哈哈哈哈,開(kāi)心不.轉(zhuǎn)化成功.