NSData <=> NSString
- (void)readInt {
NSUInteger index = 612111; //0x9570F (16進位) //612111 (10進位)
NSData *data1 = [NSData dataWithBytes:&index length:sizeof(index)];
NSLog(@"data1:%@", data1); //data1:<0f570900 00000000>
int i = 1355;//0x54B (16進位) //1355 (10進位)
NSData *data2 = [NSData dataWithBytes: &i length: sizeof(i)];
int i2;
[data2 getBytes: &i2 length: sizeof(i2)];
NSLog(@"data2:%@, %d", data2, i2); //<data2:4b050000>, 1355
}
- (void)readString{
NSString * string =@"abc";
NSData* data = [string dataUsingEncoding:NSUTF8StringEncoding];
NSLog(@"data context: \n%@",data);
NSString *dataString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"dataString: %@",dataString);
const char* fileBytes = (const char*)[data bytes];
NSUInteger length = [data length];
NSUInteger index;
for (index = 0; index<length; index++)
{
char aByte = fileBytes[index];
NSLog(@"char: \n%c", aByte);
}
}
沒有留言:
張貼留言