У меня есть XML-файл, подобный этому:
<Patients>
<patient name="someName" lastName="someLastName">
<aProperty>anIntegerValue</aProperty>
</patient>
</Patients>
Итак, я анализирую это с NSXMLParser следующим образом:
В didStartElement у меня есть что-то вроде:
if ([elementName isEqual:@"Patients"]) {
appDelegate.patients = [[NSMutableArray alloc] init];
}
else if ([elementName isEqualToString:@"patient"]){
aPatient = [[Patient alloc] init];
aPatient.name = [attributeDict objectForKey:@"name"];
aPatient.lastName = [attributeDict objectForKey:@"lastName"];
Затем в какой-то момент я хочу сохранить сделанные изменения, поэтому я использую GDataXML, чтобы сохранить его так:
GDataXMLElement * patientsElement = [GDataXMLNode elementWithName:@"Patients"];
for(Patient *aPatient in patients) {
GDataXMLElement *nameElement = [GDataXMLNode elementWithName:@"name"];
GDataXMLElement *lastNameElement = [GDataXMLNode elementWithName:@"lastName"];
[aPatient addChild:nameElement];
[aPatient addChild:lastNameElement];
Etc
После этого xml-файл выглядит следующим образом:
<Patients>
<patient>
<name>someName</name>
<lastName>someLastName</lastName>
<aProperty>anIntegerValue</aProperty>
</patient>
</Patients>
(обратите внимание, кавычки ушли)
Поэтому, когда я хочу проанализировать этот файл, я получаю все "нулевые" значения.
Как мне добавить кавычки там? Или просто избегайте этой ошибки.