轻量级的将NSDictionary, NSArray, NSString转换为JSON格式字符串的NSString类目

原创 2015年11月19日 20:56:58

//

//  NSString+JSON.h

//  WSPhnixPurfier

//

//  Created by Joy on 13-9-4.

//  Copyright (c) 2013 Joy. All rights reserved.

//


#import


@interface NSString (JSON)


+(NSString *) jsonStringWithDictionary:(NSDictionary *)dictionary;

+(NSString *) jsonStringWithArray:(NSArray *)array;

+(NSString *) jsonStringWithString:(NSString *) string;

+(NSString *) jsonStringWithObject:(id) object;


@end



 

//

//  NSString+JSON.m

//  WSPhnixPurfier

//

//  Created by Joy on 13-9-4.

//  Copyright (c) 2013 Joy. All rights reserved.

//


#import "NSString+JSON.h"


@implementation NSString (JSON)


+(NSString *) jsonStringWithString:(NSString *) string{

    return [NSString stringWithFormat:@""%@"",

            [[string stringByReplacingOccurrencesOfString:@"\n" withString:@"\\n"]stringByReplacingOccurrencesOfString:@"""withString:@"\\""]

            ];

}


+(NSString *) jsonStringWithArray:(NSArray *)array{

    NSMutableString *reString = [NSMutableString string];

    [reString appendString:@"["];

    NSMutableArray *values = [NSMutableArray array];

    for (id valueObj in array) {

        NSString *value = [NSString jsonStringWithObject:valueObj];

        if (value) {

            [values addObject:[NSString stringWithFormat:@"%@",value]];

        }

    }

    [reString appendFormat:@"%@",[values componentsJoinedByString:@","]];

    [reString appendString:@"]"];

    return reString;

}


+(NSString *) jsonStringWithDictionary:(NSDictionary *)dictionary{

    NSArray *keys = [dictionary allKeys];

    NSMutableString *reString = [NSMutableString string];

    [reString appendString:@"{"];

    NSMutableArray *keyValues = [NSMutableArray array];

    for (int i=0; i<[keys count]; i++) {

        NSString *name = [keys objectAtIndex:i];

        id valueObj = [dictionary objectForKey:name];

        NSString *value = [NSString jsonStringWithObject:valueObj];

        if (value) {

            [keyValues addObject:[NSString stringWithFormat:@""%@":%@",name,value]];

        }

    }

    [reString appendFormat:@"%@",[keyValues componentsJoinedByString:@","]];

    [reString appendString:@"}"];

    return reString;

}


+(NSString *) jsonStringWithObject:(id) object{

    NSString *value = nil;

    if (!object) {

        return value;

    }

    if ([object isKindOfClass:[NSString class]]) {

        value = [NSString jsonStringWithString:object];

    }else if([object isKindOfClass:[NSDictionary class]]){

        value = [NSString jsonStringWithDictionary:object];

    }else if([object isKindOfClass:[NSArray class]]){

        value = [NSString jsonStringWithArray:object];

    }

    return value;

}


@end

版权声明:本文为博主原创文章,未经博主允许不得转载。

NSDictionary,NSArray转成NSData(JSON)NSString类型

NSDictionary,NSArray转成NSData(JSON)NSString类型

字符串(NSString)、字典(NSDictionary)、数组(NSArray)的总结

OC刚学了两天就请了两天假回家去办理户口、档案这些事了。事情办完回来之后发现两天又误了好多东西,于是急忙开始补课。在我不在学校的这两天主要学习了字符串、字典、数组这三个知识点。下面把我补回来的一些知识...

随笔-常见的数据类型常用操作整理-NSString/NSArray/NSDictionary/NSData

虽然简单,但是好多东西用到的时候再要去网上搜,觉得挺麻烦的。所以就自己整理了一份,以便不时之需。常见的数据类型常用操作整理-NSString/NSArray/NSDictionary/NSData...

iOS基础知识:Objective-C 之 NSString,NSArray,NSDictionary,NSSet

NSString/NSArray/NSDictionary/NSSetNSString/NSMutableString

NSString/NSArray/NSDictionary/NSSet方法的总结

NSString 创建 NSString *str=@”test”; NSString *str1=[[NSString alloc]initWithString:str]; NSString ...
  • xzx_xzx
  • xzx_xzx
  • 2015年09月17日 20:19
  • 122

iOS NSString,NSArray,NSDictionary的Copy属性使用

在平时使用NSArray,NSDictionary以及NSString的过程中,经常会默认写了strong 属性,或者按照规范使用Copy,在Apple的规范中,是提倡我们使用copy的属性。 基本...

黑马程序员--OC自学笔记---10Foundation、NSString、NSURL、NSRange、NSArray、NSMutableArray、NSDictionary

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 1.   Foundation框架简介: 1)   框架是由许多类、方法、函数、...

Objective-C NSString、NSArray、NSDictionary、NSData 存取至Document

//-(void)writeButtonAction:(id)sender{// //获得沙盒路径// NSArray * paths = NSSearchPathForDirectoriesInDo...

Objective C - Foundation - NSNumber & NSString & NSArray & NSDictionary & NSSet

/*-------------------- NSNumber ----------------------*/         //创建(封装成)一个NSNumber对象         NSNum...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:轻量级的将NSDictionary, NSArray, NSString转换为JSON格式字符串的NSString类目
举报原因:
原因补充:

(最多只允许输入30个字)