как читать поля в объекте, который хранится в массиве в target-c - PullRequest
0 голосов
/ 12 мая 2010

у моего appdelegate есть книга массивов, этот массив хранит множество объектов, таких как широта и долгота, поступающие с сервера. этот объект содержит множество значений широты и долготы, поступающих с сервера.

значения, поступающие с сервера, сохраняются в объектном файле booknew, а затем эти объекты сохраняются в массиве.

как я могу прочитать, что значения широты и долготы хранятся в объекте, а объекты хранятся в массиве.

Ответы [ 2 ]

0 голосов
/ 18 мая 2010

Если данные, поступающие с сервера, представляют собой файл XML, это легко. Простой способ - определить данные как массив объектов, где каждый объект является NSDictionary. В каждом словаре вы можете иметь значения для клавиш «lat» и «lng», а также другую информацию, связанную с каждым местоположением. Если это так, как данные расположены, вы можете получить доступ к этим значениям что-то вроде этого:

    for (id dict in book) {
    float latitude=[[dict objectForKey:@"lat"] floatValue];
    float longitude=[[dict objectForKey:@"lng"] floatValue];
    //code to use values here
}

Если это близко к тому, как данные могут быть расположены в файле, вы можете прочитать их с помощью NSArray * book = [NSArray alloc] initWithContentsOfFile: filename] или подобным.

Если вы хотите иметь возможность изменять объекты или массив, вы должны использовать массив NSMutableArray или объекты NSMutableDictionary.

Если вышеприведенное невозможно (например, если вы не имеете никакого влияния на формат файла), вам придется потратить гораздо больше времени на написание пользовательского кода для его чтения, анализа и создания объектов самостоятельно.

0 голосов
/ 12 мая 2010

Предполагая, что объекты имеют методы доступа к этим значениям, вы просто вызовете их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...