AI-generated Key Takeaways
-
GCKJSONUtils provides utility methods for working with JSON data in iOS.
-
It offers methods to parse JSON strings into objects and write objects into JSON strings.
-
The class includes methods to test the equivalence of JSON strings and JSON objects, ignoring key order differences.
Overview
Utility methods for working with JSON data.
Inherits NSObject.
Class Method Summary | |
(nullable id) | + parseJSON: |
Parses a JSON string into an object. More... | |
(nullable id) | + parseJSON:error: |
Parses a JSON string into an object. More... | |
(NSString *) | + writeJSON: |
Writes an object hierarchy of data to a JSON string. More... | |
(BOOL) | + isJSONString:equivalentTo: |
Tests if two JSON strings are equivalent. More... | |
(BOOL) | + isJSONObject:equivalentTo: |
Tests if two JSON objects are equivalent. More... | |
Method Detail
+ (nullable id) parseJSON: | (NSString *) | json |
Parses a JSON string into an object.
- Parameters
-
json The JSON string to parse.
- Returns
- The root object of the object hierarchy that represents the data (either an NSArray or an NSDictionary), or
nil
if the parsing failed.
+ (nullable id) parseJSON: | (NSString *) | json | |
error: | (NSError **) | error | |
Parses a JSON string into an object.
- Parameters
-
json The JSON string to parse. error If not nil, the location at which to store a pointer to an NSError if the parsing fails.
- Returns
- The root object of the object hierarchy that represents the data (either an NSArray or an NSDictionary), or
nil
if the parsing failed.
+ (NSString *) writeJSON: | (id) | object |
Writes an object hierarchy of data to a JSON string.
- Parameters
-
object The root object of the object hierarchy to encode. This must be either an NSArray or an NSDictionary.
- Returns
- An NSString containing the JSON encoding, or
nil
if the data could not be encoded.
+ (BOOL) isJSONString: | (NSString *) | actual | |
equivalentTo: | (NSString *) | expected | |
Tests if two JSON strings are equivalent.
This does a deep comparison of the JSON data in the two strings, but ignores any differences in the ordering of keys within a JSON object. For example, { "width":64, "height":32 }
is considered to be equivalent to { "height":32, "width":64 }
.
+ (BOOL) isJSONObject: | (id) | actual | |
equivalentTo: | (id) | expected | |
Tests if two JSON objects are equivalent.
This does a deep comparison of the JSON data in the two objects, but ignores any differences in the ordering of keys within a JSON object. For example, { "width":64, "height":32 }
is considered to be equivalent to { "height":32, "width":64 }
.