| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152 |
- //
- // NSDictionary+Extension.m
- // PowerrichOA
- //
- // Created by admin on 17/10/10.
- // Copyright © 2017年 voquan. All rights reserved.
- //
- #import "NSDictionary+Extension.h"
- @implementation NSDictionary (Extension)
- - (NSInteger)integerValueForKey:(id)key {
- id value = [self notNullValueForKey:key];
- return value == nil ? 0 : [value integerValue];
- }
- - (int)intValueForKey:(id)key {
- id value = [self notNullValueForKey:key];
- return value == nil ? 0 : [value intValue];
- }
- /**
- 从字典里取int(内带判空)
-
- @param key 字典Key值
- @return long
- */
- - (long)longValueForKey:(id)key {
- id value = [self notNullValueForKey:key];
- return value == nil ? 0 : [value longLongValue];
- }
- - (long long)longlongValueForKey:(id)key {
- id value = [self notNullValueForKey:key];
- return value == nil ? 0 : [value longLongValue];
- }
- - (BOOL)boolValueForKey:(id)key {
- id value = [self notNullValueForKey:key];
- return value == nil ? NO : [value boolValue];
- }
- - (float)floatValueForKey:(id)key {
- id value = [self notNullValueForKey:key];
- return value == nil ? NO : [value floatValue];
- }
- /**
- 从字典里取double(内带判空)
-
- @param key 字典Key值
- @return double
- */
- - (double)doubleValueForKey:(id)key {
- id value = [self notNullValueForKey:key];
- return value == nil ? NO : [value doubleValue];
- }
- - (NSString *)stringValueForKey:(id)key {
- id value = [self notNullValueForKey:key];
- if ([value isKindOfClass:[NSNumber class]]) {
- value = [value stringValue];
- }
- return value;
- }
- - (NSArray *)arrayValueForKey:(id)key {
- id value = [self notNullValueForKey:key];
- if(![value isKindOfClass:[NSArray class]]) {
- return nil;
- }
- return value;
- }
- - (NSMutableArray*)mutableArrayValueForKey:(NSString *)key {
- id value = [self notNullValueForKey:key];
- if(![value isKindOfClass:[NSMutableArray class]]) {
- return nil;
- }
- return value;
- }
- - (NSDictionary *)dictionaryValueForKey:(id)key {
- id value = [self notNullValueForKey:key];
- if(![value isKindOfClass:[NSDictionary class]]) {
- return nil;
- }
- return value;
- }
- - (BOOL)isNullValue:(id)value {
- return [value isEqual:[NSNull null]];
- }
- - (id)notNullValueForKey:(id)key {
- id value = [self objectForKey:key];
- if([self isNullValue:value]) {
- return nil;
- }
-
- #pragma mark 判断是否nil
- if (value == nil) {
- // NSLog(@"%@不存在",key);
- value = @"";
- }
- else if ([value isKindOfClass:[NSNumber class]]) {
- value = [NSString stringWithFormat:@"%@", value];
- }
- return value;
- }
- -(NSString *)convertToJsonData
- {
-
- NSError *error;
-
- NSData *jsonData = [NSJSONSerialization dataWithJSONObject:self options:NSJSONWritingPrettyPrinted error:&error];
-
- NSString *jsonString;
-
- if (!jsonData) {
-
- NSLog(@"%@",error);
-
- }else{
-
- jsonString = [[NSString alloc]initWithData:jsonData encoding:NSUTF8StringEncoding];
-
- }
-
- NSMutableString *mutStr = [NSMutableString stringWithString:jsonString];
-
- NSRange range = {0,jsonString.length};
-
- //去掉字符串中的空格
-
- [mutStr replaceOccurrencesOfString:@" " withString:@"" options:NSLiteralSearch range:range];
-
- NSRange range2 = {0,mutStr.length};
-
- //去掉字符串中的换行符
-
- [mutStr replaceOccurrencesOfString:@"\n" withString:@"" options:NSLiteralSearch range:range2];
-
- return mutStr;
-
- }
- @end
|