NSArray与NSString、NSData,NSDictionary与NSString、NSData 相互转化

    NSArray *array = @[ @1, @2, @3, @4, @5, @3 ];
    // 1. NSArray与NSData相互转化
    // NSArray to NSData
    NSError *error;
    NSData *arrayData = [NSJSONSerialization dataWithJSONObject:array options:NSJSONWritingPrettyPrinted error:&error];
    if (!error) {
        NSLog(@"arrayData = %@", arrayData);
    } else {
        NSLog(@"%@", error);
    }
    // NSData to NSArray
    NSArray *data2Array = [NSJSONSerialization JSONObjectWithData:arrayData options:NSJSONReadingMutableLeaves error:&error];
    if (!error) {
        NSLog(@"data2Array = %@", data2Array);
    } else {
        NSLog(@"%@", error);
    }

    // 2. NSArray与NSString相互转化
    // NSArray to NSString
    NSString *arrayStr = [array componentsJoinedByString:@","];
    NSLog(@"arrayStr = %@", arrayStr);
    // NSString to NSArray
    NSArray *string2Array = [arrayStr componentsSeparatedByString:@","];
    NSLog(@"string2Array = %@", string2Array);

    NSDictionary *dictionary = @{ @"name": @"xue zhang", @"sex": @1, @"age": @25 };
    // 3. dictionary与NSData相互转化
    // NSArray to NSData
    NSData *dictionaryData = [NSJSONSerialization dataWithJSONObject:dictionary options:NSJSONWritingPrettyPrinted error:&error];
    if (!error) {
        NSLog(@"dictionaryData = %@", dictionaryData);
    } else {
        NSLog(@"%@", error);
    }
    // NSData to NSDictionary
    NSDictionary *data2Dictionary = [NSJSONSerialization JSONObjectWithData:dictionaryData options:NSJSONReadingMutableLeaves error:&error];
    if (!error) {
        NSLog(@"data2Dictionary = %@", data2Dictionary);
    } else {
        NSLog(@"%@", error);
    }

    // 4. NSDictionary与NSString相互转化
    // NSDictionary to NSString
    NSString *dictionaryStr = [[NSString alloc] initWithData:dictionaryData encoding:NSUTF8StringEncoding];
    NSLog(@"dictionaryStr = %@", dictionaryStr);
    // NSString to NSArray
    NSDictionary *string2Dictionary = [NSJSONSerialization JSONObjectWithData:[dictionaryStr dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingMutableLeaves error:&error];
    NSLog(@"string2Dictionary = %@", string2Dictionary);

时间: 2024-09-28 18:44:55

NSArray与NSString、NSData,NSDictionary与NSString、NSData 相互转化的相关文章

为什么有时候NSData转换成NSString的时候返回nil

有时候,NSData明明有值,可是,当转换成NSString的时候,却没有值,现在来进行测试:) -现在提供测试用素材- 源码如下: // // AppDelegate.m // TestNSData // // Created by YouXianMing on 14-8-30. // Copyright (c) 2014年 YouXianMing. All rights reserved. // #import "AppDelegate.h" @implementation App

NSDictionary转化为NSData

之前自己写了NSDictionary转化为NSData的一种方法如下 NSMutableData *data = [[NSMutableData alloc] init]; NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data]; [archiver encodeObject:messageDic forKey:@"KeyValue"]; [archiver fin

NSDate与 NSString 、long long类型的相互转化

NSDate与 NSString .long long类型的相互转化 我的技术博客经常被流氓网站恶意爬取转载.请移步原文:http://www.cnblogs.com/hamhog/p/3560280.html,享受整齐的排版.有效的链接.正确的代码缩进.更好的阅读体验. [NSDate <-> NSString] NSDateFormatter可在指定的日期格式下使NSDate与NSString相互转化. NSDate -> NSString: +(NSString*)stringFr

IOS开发之旅-IOS常用数据结构NSArray、NSMutableArray、NSDictionary、NSMutableDictionary介绍

NSArray NSArray基本用法 void arrayTest1() { //数组初始化最后必须以nil结尾,表示数组元素结束 NSArray *array1 = [[NSArray alloc]initWithObjects:@"item0",@"item1",@"item2",@"item3",@"item4",nil]; NSLog(@"%@",array1); /*( it

OC中的NSArray和NSMutableArray、NSDictionary和NSMutableDictionary用法

一:NSArray 和NSMutableArray 1: NSArray:不可变数组 NSArray是OC中使用的数组,只能用来存放OC对象,不能存放非OC对象如基本数据类型 它使不可变的,一旦初始化完毕,内容不能改变,也不能添加元素. 而C语言中的数组只能存放一种数据类型 (1) 普通数组的用法 // 普通数组的创建 // int arr[5] = {1,3,4}; // 对象数组的创建 // Person *p = [[Person alloc] init]; // Person *arrP

NSString,NSArray和NSDictionary to JSON标准格式字符串

#import <Foundation/Foundation.h> @interface NSString (HXAddtions) +(NSString *) jsonStringWithDictionary:(NSDictionary *)dictionary; +(NSString *) jsonStringWithArray:(NSArray *)array; +(NSString *) jsonStringWithString:(NSString *) string; +(NSStr

NSData NSDate NSString NSArray NSDictionary 相互转化

//    NSData  NSDate NSString NSArray NSDictionary json NSString *string = @"hello word"; NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding]; NSArray *array = [NSArray arrayWithObjects:@"1",@"2",@"3",nil

iOS中NSString,NSData和char的相互转换,JSON串转化为NSDictionary或NSArray

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

NSDictionary 或者NSArray(NSMutableArray) ==&gt;&gt; NSData ==&gt;&gt; NSString (Json):

以下代码都有详细的注释说明这些类型之间的转换(如有错误的地方还望批评指出,谢谢!) - (void)viewDidLoad { [super viewDidLoad]; /** * NSDictionary ||NSArray(NSMutableArray) ==>> NSData ==>> NSString (Json): */ // NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys: // @&q