Подтвердить что ты не робот

Могу ли я записать данные JSON в файл в iOS/Objective-C?

Мне нужно записать данные JSON в файл с помощью Objective-C. Мои данные выглядят примерно так:

data = {
    "NrObjects" : "7",
    "NrScenes" : "5",
    "Scenes" : [
        { "dataType" : "label", "position" : [20, 20, 300, 300], "value" : "Hello" },
        { "dataType" : "label", "position" : [20, 60, 300, 300], "value" : "Hi There" }
    ]
}

Он может стать более сложным, чем это, но мне нужно знать, могу ли я сделать это с помощью Obj-C, т.е. создать объект этой формы, записать данные в файл и прочитать его.

4b9b3361

Ответ 1

Для этого есть класс, специально предназначенный для этого, его называемый NSJSONSerialization.

Вы читаете это следующим образом:

NSArray* jsonResponse = [NSJSONSerialization JSONObjectWithData:theResponse
                                                        options:kNilOptions
                                                          error:&error];

и напишите его следующим образом:

NSData* jsonData = [NSJSONSerialization dataWithJSONObject:userDetails
                                                   options:kNilOptions 
                                                     error:&error];

Ответ 2

записи:

NSData *data = [NSKeyedArchiver archivedDataWithRootObject:jsonObject];
[data writeToFile:path atomically:YES];

следующим образом:

NSData *data = [NSData dataWithContentsOfFile:path];
NSDictionary *jsonObject = [NSKeyedUnarchiver unarchiveObjectWithData:data];