iOS json、對象轉(zhuǎn)換

我們可以寫一個分類來方便我們在項目中的使用。

頭文件

#import <Foundation/Foundation.h>

@interface NSObject (JSONTool)

/**
 *  對象轉(zhuǎn)換為JSONData
 *
 *  @return NSData
 */
- (nullable NSData *)JSONData;

/**
 *  對象轉(zhuǎn)換為JSONString
 *
 *  @return NSString
 */
- (nullable NSString *)JSONString;

/**
 *  將JSONString轉(zhuǎn)換為對象
 *
 *  @param jsonString json字符串
 *
 *  @return 對象
 */
+ (nullable id)objectFromJSONString:(nullable NSString *)jsonString;

/**
 *  將JSONString轉(zhuǎn)換為對象
 *
 *  @param jsonString json字符串
 *
 *  @return 對象
 */
+ (nullable id)objectFromJSONData:(nullable NSData *)jsonData;

@end

實現(xiàn)文件

#import "NSObject+JSONTool.h"

@implementation NSObject (JSONTool)

- (NSData *)JSONData{
    return [NSJSONSerialization dataWithJSONObject:self options:0 error:nil];
}

- (NSString *)JSONString{
    if (![NSJSONSerialization isValidJSONObject:self]) {
        return @"";
    }
    return [[NSString alloc] initWithData:[NSJSONSerialization dataWithJSONObject:self options:NSJSONWritingPrettyPrinted error:nil] encoding:NSUTF8StringEncoding];
}

+ (id)objectFromJSONString:(NSString *)jsonString{
    return [NSJSONSerialization JSONObjectWithData:[jsonString dataUsingEncoding:NSUTF8StringEncoding] options:0 error:nil];
}

+ (nullable id)objectFromJSONData:(nullable NSData *)jsonData{
    return [NSJSONSerialization JSONObjectWithData:jsonData options:0 error:nil];
}

@end

這樣我們就可以很方便的使用轉(zhuǎn)換了,是不是很簡單呢?


注:相關(guān)內(nèi)容我會繼續(xù)更新。如果想找一些iOS方面的代碼可以關(guān)注我的簡書,我會持續(xù)更新,大家一起探討探討
在此謝謝大家閱讀??

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,008評論 25 709
  • 在所有的迫不得已中,還是最喜歡那個青春洋溢的自己。 有點期待的時候 你是一棵樹的樣子 陽光有點暖 客氣而分散 有點...
    水檻閱讀 202評論 0 6
  • 再見到他,初戀那個男孩,變得胖胖的,我不喜歡他了。 朋友發(fā)來這句話,我暗喜:蒼天有眼,終于不在這棵樹上糾纏了。不明...
    once從前慢閱讀 355評論 3 4
  • 7 梅米抬起她的手表。 兩人從入場到現(xiàn)在,已經(jīng)度過了二十四小時。 心思是不必挑明的。他們都想按下用于主動返回的三個...
    XYG簡書閱讀 326評論 0 0
  • 昨天越來越多,明天越來越少。走過的路長了,遇見的人多了,不經(jīng)意間發(fā)現(xiàn),人生最曼妙的風(fēng)景是內(nèi)心的淡定與從容,頭腦的睿...
    阿達0615閱讀 185評論 0 0

友情鏈接更多精彩內(nèi)容