Pregunta

Estoy usando algo así como el código de abajo para guardar una NSDictionary de objetos en el dispositivo. ¿Hay una manera de abrir este archivo, profundizar en los elementos del diccionario que contiene y, idealmente , edite los datos? Mi conjetura es que no, no fiable, como la optimización de hecho cuando el ahorro hace que el archivo de difícil interpretación ... al menos parece que cuando se abre camino con algo como Propiedad editor de listas . Por ejemplo, si algunos de mis objetos comparten una NSString similares, parece que dijo NSString solamente se archiva una vez ... la alteración de la estructura de la NSDictionary de lo que había estado esperando.

- (BOOL)writeDataToFile {
 NSMutableData *data = [[NSMutableData alloc] init];
 NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
 [archiver encodeObject:myDictionary forKey:kDataKey];
 [archiver encodeInteger:kDataFileVersion forKey:kDataVersionKey];
 [archiver finishEncoding];
 BOOL success = [data writeToFile:[self dataFilePath] atomically:YES];
 [archiver release];
 [data release];
 return success;
}
¿Fue útil?

Solución

La verdadera pregunta es "debe usted?" ... Probablemente no.

Claro, usted podría analizar el formato de archivo, pero ese formato es un detalle de implementación que podría cambio y que no es sólo vale la pena.

¿Por qué estás tratando de hacer esto? ¿Estás tratando de hacer cambios incrementales a la base de datos SQLite +? Sería simplemente vieja sqlite sí resolver su problema?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top