数据类型转换及数据操作


Objective-C 数据类型


NSData:一种将数据对象化的包装。

1.NSData -> NSString

NSString *string = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];


2.NSString ->NSData

NSString *string = @"abcdefg";  
NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];


3.NSData -> UIImage

NSData *data = [NSData new];
UIImage *image = [UIImage imageWithData:data];

4.UIImage ->NSData

这里有这么两种方法 UIImageJPEGRepresentation(UIImage *image,压缩系数) 和 UIImagePNGRepresentation(UIImage *image)

    UIImage *image = [UIImage new];
    NSData *data =UIImagePNGRepresentation(image);
至于另一个的使用,等我研究明白再回来写,仿佛是具有压缩改变数据大小的效果。


5.NSString -> NSDictionary

NSString *dicString = _inPutView.text;  
NSData *JSONData = [dicString dataUsingEncoding:NSUTF8StringEncoding];  
NSError *err = nil;  
NSDictionary *parameters=[NSJSONSerialization JSONObjectWithData:JSONData options:NSJSONReadingMutableLeaves error:&err];

6.NSDictionary -> json字符串

    NSDictionary *dic = @{@"A":@"abc",@"B":@"123"};
    NSError *error = nil;
    NSData *jsondata = [NSJSONSerialization dataWithJSONObject:dic options:NSJSONWritingPrettyPrinted error:&error];
    NSString *jsonString = @"";
    if(!jsondata){
        NSLog(@"wrong = %@",error);
    }else{
        jsonString = [[NSString alloc] initWithData:jsondata encoding:NSUTF8StringEncoding];
    }
    NSLog(@"jsonString = %@",jsonString);
输出:
2017-02-15 10:27:58.255 NodeLearn[1589:37851] jsonString = {
  "A" : "abc",
  "B" : "123"
}
还可以再进一步操作,去掉换行和空格:
    NSMutableString *mulString = [NSMutableString stringWithString:jsonString];
    NSRange range = {0,jsonString.length};
    [mulString replaceOccurrencesOfString:@"\n" withString:@"" options:NSLiteralSearch range:range];
    
    NSRange range0 = {0,mulString.length};
    [mulString replaceOccurrencesOfString:@" " withString:@"" options:NSLiteralSearch range:range0];
    
    NSLog(@"jsonString = %@",mulString);
输出结果:
2017-02-15 10:37:16.664 NodeLearn[1789:43886] jsonString = {"A":"abc","B":"123"}



Node.js 数据类型

1. JS对象 <=> 字符串

var obj1 ={
	key :'hello world',
	num : 123
};

var str = JSON.stringify(obj1);
var obj2 = JSON.parse(str);


C 数据类型




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值