NSData NSString char *之间 || NSData和NSArray的相互转换

   
1.NSString 转化为 char*
  NSString *testString = @"this is a test";
  const char * testChar = [testString UTF8String];

2.char * 转化为 NSString
NSString *str = [NSString stringWithCString:testChar encoding:NSUTF8StringEncoding];

3.char * 转化 NSData
  方法一:
        char* testChar = (char*)malloc(sizeof(byte)*16);
        NSData *dataTest = [NSData dataWithBytes:testChar length:strlen(testChar)];
  方法二:
        先转化为NSString: NSString *testString = [[NSString alloc] initWithUTF8String:testChar]; 
        后NSString转:     NSData *dataTest = [testString dataUsingEncoding: NSUTF8StringEncoding];

5.NSData 转化 char *
  NSData dataTest;
  char* testChar = [dataTest bytes];

6.NSData 转化 NSString;
  NSData* dataTest;
  NSString* testString= [[NSString alloc] initWithData:dataTest encoding:NSUTF8StringEncoding];

7.NSString 转化 NSData对象
  NSData* testData = [@"testdata" dataUsingEncoding:NSUTF8StringEncoding];


8.NSArray与NSData 

    NSArray *arr1 = [[NSArray alloc]initWithObjects:@"HMT",@"WDQ",nil];
    NSData *data = [NSKeyedArchiver archivedDataWithRootObject:arr1];
    NSArray *arr2 = [NSKeyedUnarchiver unarchiveObjectWithData:data];
    NSLog(@"arr2 = %@",arr2);


9.image与NSData

if (UIImagePNGRepresentation(image) == nil) {

            data = UIImageJPEGRepresentation(image, 1);

        } else {

            data = UIImagePNGRepresentation(image);
}




评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值