Byte[] 和 NSString互相转换
Byte数组和NSString互相转换,这种转换可能在很多情况需要,比如IO操作,生成加密hash码等等。
1 2 3 4 5 6 7 8 9 10 11 12 13
| // NSString -> Byte[] NSString *str = @"hello world"; NSData *data = [str dataUsingEncoding: NSUTF8StringEncoding]; Byte *bytes = (Byte *)[data bytes]; for(int i=0;i<[data length];i++){ NSLog(@"bytes[%d] = %d, %@\n", i, bytes[i], [NSString stringWithFormat:@"%02x",bytes[i]&0xff]); }
// Byte[] -> NSString Byte byte[] = {104,101,108,108,111,32,119,111,114,108,100}; NSData *adata = [[NSData alloc] initWithBytes:byte length:11]; NSString *aString = [[NSString alloc] initWithData:adata encoding:NSUTF8StringEncoding]; NSLog(@"%@", aString);
|