40 lines
1.3 KiB
Objective-C
40 lines
1.3 KiB
Objective-C
//
|
|
// NSDictionary+Customer.m
|
|
// Unity-iPhone
|
|
//
|
|
// Created by Hl Zhang on 2023/9/7.
|
|
//
|
|
|
|
#import "NSDictionary+Customer.h"
|
|
|
|
@implementation NSDictionary (Customer)
|
|
+(NSDictionary *)parseJSONString:(NSString *)jsonString {
|
|
NSData *data = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
|
|
NSError *error = nil;
|
|
NSDictionary *result = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&error];
|
|
if (error != nil) {
|
|
NSLog(@"Error parsing JSON string: %@", error.localizedDescription);
|
|
return nil;
|
|
}
|
|
return result;
|
|
}
|
|
+(NSString *)toJSONString: (NSDictionary *) json minify:(BOOL) minify {
|
|
NSError *error = nil;
|
|
NSJSONWritingOptions option = minify ? (NSJSONWritingOptions)0 : NSJSONWritingPrettyPrinted;
|
|
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:json options:option error:&error];
|
|
NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
|
|
if (minify) {
|
|
jsonString = [jsonString stringByReplacingOccurrencesOfString:@"\\s"
|
|
withString:@""
|
|
options:NSRegularExpressionSearch
|
|
range:NSMakeRange(0, [jsonString length])];
|
|
}
|
|
|
|
if (error != nil) {
|
|
NSLog(@"Error stringify JSON data: %@", error.localizedDescription);
|
|
return nil;
|
|
}
|
|
return jsonString;
|
|
}
|
|
@end
|