iOS開發把格式化的JSON格式的字符串轉換成字典、字典轉json格式字符串

JsonStrToDic.h

#import <Foundation/Foundation.h>

@interface JsonStrToDic : NSObject
+ (NSDictionary *)dictionaryWithJsonString:(NSString *)jsonString;
+ (NSString*)dictionaryToJson:(NSDictionary *)dic;
@end

JsonStrToDic.m

#import "JsonStrToDic.h"

@implementation JsonStrToDic
/*!
 
 * @brief 把格式化的JSON格式的字符串轉換成字典
 
 * @param jsonString JSON格式的字符串
 
 * @return 返回字典
 
 */

//json格式字符串轉字典:

+ (NSDictionary *)dictionaryWithJsonString:(NSString *)jsonString {
    
    if (jsonString == nil) {
        
        return nil;
        
    }
    
    NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
    
    NSError *err;
    
    NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:jsonData
                         
                                                        options:NSJSONReadingMutableContainers
                         
                                                          error:&err];
    
    if(err) {
        
        NSLog(@"json解析失?。?@",err);
        
        return nil;
        
    }
    
    return dic;
    
}
、、、
//字典轉json格式字符串:
、、、
+ (NSString*)dictionaryToJson:(NSDictionary *)dic

{
    
    NSError *parseError = nil;
    
    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dic options:NSJSONWritingPrettyPrinted error:&parseError];
    
    return [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
    
}

//NSJSONWritingPrettyPrinted  是有換位符的。

//如果NSJSONWritingPrettyPrinted 是nil 的話 返回的數據是沒有 換位符的 @end
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容