类型的转换

NSInteger转化NSString类型:

 

               [NSString stringWithFormat: @"%d", NSInteger];

 

 NSString转化 NSInteger类型:

 

               NSInteger = [NSString intValue]; 

NSString 转换成NSData 对象 
      NSData* xmlData = [@"testdata" dataUsingEncoding:NSUTF8StringEncoding]; 
   
   NSData 转换成NSString对象 
   NSData * data; 
       NSString *result = [[NSString alloc] initWithData:data  encoding:NSUTF8StringEncoding]; 


NSData 转换成char* 
NSData *data; 
char *test=[data bytes]; 


char* 转换成NSData对象 
byte* tempData = malloc(sizeof(byte)*16); 
NSData *content=[NSData dataWithBytes:tempData length:16];

 

int --> NSData 
int someInt = 1;
NSString *aString = [NSString stringWithFormat:@"%d",someInt];
NSData *someData = [aString dataUsingEncoding:NSUTF8StringEncoding];
[someData writeToFile:[documentsDirectory stringByAppendingString:@"someFile"] atomically:YES];



NSData --> int

NSData* someData = [NSData dataWithContentsOfFile:[documentsDirectory stringByAppendingString:@"someFile"];
NSString *aString = [NSString alloc] initWithData:someData encoding:NSUTF8StringEncoding];
int someInt = [aString intValue];

typedef struct _INT{

int t1;

int t2;

}INT_STRUCT;

 

typedef struct _STRING{

NSString *st1;

NSString *st2;

UIImage *image;

}STRING_STRUCT;

 

//初始化两个变量

 

INT_STRUCT theInt = {2,5};

STRING_STRUCT theString = {@"string1",@"string2",[UIImage imageNamed:@"icon57.png"]};

 

//将这两个变量添加到data中,他们现在是二进制

 

NSMutableData *theData = [NSMutableData data];

[theData appendBytes:&theInt length:sizeof(INT_STRUCT)];

[theData appendBytes:&theString length:sizeof(STRING_STRUCT)];

 

 

//保存到你的路径,可以不需要后缀名

[theData writeToFile:@"mySave" atomically:YES];

 

 

//读取

 

INT_STRUCT newInt;

STRING_STRUCT newString;

NSMutableData *newData = [NSData dataWithContentsOfFile:@"mySave"];

 

//按地址赋值,注意range的范围

[newData getBytes:&newInt range:NSMakeRange(0,sizeof(INT_STRUCT))];

[newData getBytes:&newString range:NSMakeRange(sizeof(INT_STRUCT),sizeof(INT_STRUCT)+sizeof(STRING_STRUCT))];

 

 

NSLog(@"newInt.t1===%d",newInt.t1);

NSLog(@"newString.image===%@",newString.image);

 

 

NSLog(@"theString.image===%@",theString.image);

posted on 2015-06-06 16:01  小小卖报家  阅读(152)  评论(0编辑  收藏  举报