NSDictionary,NSArray转成NSData(JSON)NSString类型
来源:互联网 发布:软件质量品质管理 编辑:程序博客网 时间:2024/04/29 17:08
//// NSDictionary+JSONorNSString.h// UIKit数据转换//// Created by mac on 15-4-4.// Copyright (c) 2015年 www.swift.com. All rights reserved.//#import <Foundation/Foundation.h>@interface NSDictionary (JSONorNSString)/** * 转换成JSON串字符串(没有可读性) * * @return JSON字符串 */- (NSString *)toJSONorNSString;/** * 转换成JSON串字符串(有可读性) * * @return JSON字符串 */- (NSString *)toReadJSONorNSString;/** * 转换成JSONData(有可读性) * * @return JSONData */- (NSData *)toJSONData;@end
//// NSDictionary+JSONorNSString.m// UIKit数据转换//// Created by mac on 15-4-4.// Copyright (c) 2015年 www.swift.com. All rights reserved.//#import "NSDictionary+JSONorNSString.h"@implementation NSDictionary (JSONorNSString)- (NSString *)toJSONorNSString{ NSData *data=[NSJSONSerialization dataWithJSONObject:self options:NSJSONReadingMutableLeaves|NSJSONReadingAllowFragments error:nil]; if (data == nil) { return nil; } NSString *str=[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; return str;}- (NSString *)toReadJSONorNSString{ NSData *data=[NSJSONSerialization dataWithJSONObject:self options:NSJSONWritingPrettyPrinted error:nil]; if (data == nil) { return nil; } NSString *str=[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; return str;}- (NSData *)toJSONData{ NSData *data=[NSJSONSerialization dataWithJSONObject:self options:NSJSONWritingPrettyPrinted error:nil]; return data;}@end
//
// NSArray+toJSONorNSString.m
// UIKit数据转换
//
// Created by mac on 15-4-4.
// Copyright (c) 2015年 www.swift.com. All rights reserved.
//
#import "NSArray+toJSONorNSString.h"
@implementation NSArray (toJSONorNSString)
- (NSString *)toJSONorNSString
{
NSData *data=[NSJSONSerialization dataWithJSONObject:self options:NSJSONReadingMutableLeaves|NSJSONReadingAllowFragments error:nil];
if (data == nil) {
return nil;
}
NSString *str=[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
return str;
}
- (NSString *)toReadJSONorNSString
{
NSData *data=[NSJSONSerialization dataWithJSONObject:self
options:NSJSONWritingPrettyPrinted
error:nil];
if (data == nil) {
return nil;
}
NSString *str=[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
return str;
}
- (NSData *)toJSONData
{
NSData *data=[NSJSONSerialization dataWithJSONObject:self
options:NSJSONWritingPrettyPrinted
error:nil];
return data;
}
@end
NSArray 实现跟字典一样
下面来看控制台输出
//// ViewController.m// UIKit数据转换//// Created by mac on 15-4-4.// Copyright (c) 2015年 www.swift.com. All rights reserved.//#import "ViewController.h"#import "NSDictionary+JSONorNSString.h"#import "NSArray+toJSONorNSString.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; NSDictionary *dic=@{ @"name":@"jack", @"age":@17, @"phone":@1872223455 }; NSLog(@"dic%@",[dic toJSONorNSString]); //可读性不强 NSLog(@"dic%@",[dic toReadJSONorNSString]); //JSON数据格式 NSLog(@"dic%@",[dic toJSONData]); //字典转成NSData(json) NSArray *arr=@[@"name",@"jack",@"age",@17,@"phone",@1872223455]; NSLog(@"arr:%@",[arr toJSONorNSString]); NSLog(@"arr:%@",[arr toReadJSONorNSString]);//JSON数据格式 NSLog(@"arr:%@",[arr toJSONData]);//数组转成NSData(json) }@end
1 0
- NSDictionary,NSArray转成NSData(JSON)NSString类型
- NSString-->NSDictionary NSArray NSDictionary-->NSData
- NSDictionary、NSArray、NSString、NSData互转
- NSArray与NSString、NSData,NSDictionary与NSString、NSData 相互转化
- NSData NSDate NSString NSArray NSDictionary 相互转换
- NSData NSDate NSString NSArray NSDictionary 相互转换
- NSData NSDate NSString NSArray NSDictionary 相互转换
- NSData和NSString、NSDictionary、NSArray互转
- NSDictionary 或者NSArray(NSMutableArray) ==>> NSData ==>> NSString (Json):
- Objective-C NSString、NSArray、NSDictionary、NSData 存取至Document
- ios中NSString、NSArray、NSData、NSDictionary本地读写
- ios应用开发20——NSFileManager文件读写及NSData、NSDictionary、JSON、NSArray类型转化
- NSArray/NSDictionary/NSData/集合
- NSDictionary - NSData - NSString conversion
- NSData NSArray NSString 转换
- day013 NSString NSArray NSDictionary
- NSString,NSArray,NSSet,NSDictionary
- NSData转成NSString
- (AS3)基于系统时间的时间管理器Ticker
- js算法
- tomcat部署web应用的几种方式
- Markdown使用
- STL-优先队列(priority queue)
- NSDictionary,NSArray转成NSData(JSON)NSString类型
- java(30) - 对象浅克隆和深克隆
- caffe下安装python库
- Go语言数据结构
- HDU-2674 N!Again 水题
- 计算机网络基础笔记4
- GCC Warning ISO C++11 Does not allow conversion from literal string to char*
- 编译内核2.3.4遇到的问题以及解决方案
- javascript弹出窗口实现动态文件上传