He estado usando un plist para almacenar datos en mi aplicación. Pude escribir y leer desde el plist sin ningún problema. Creé este plist en XCode, agregando las filas de números, diccionarios y arreglos yo mismo. Sin embargo, me gustaría poder restablecer el plist al estado original, y debe haber una forma más fácil de hacer esto que escribir un valor 0 o nil en cada entrada del plist. Entonces, ¿cuál es la forma más fácil de restablecer el plist a su estado predeterminado inicial?¿Cómo elimino los datos en un plist creado en XCode?
5
A
Respuesta
10
Lo más simple sería la de eliminar el archivo usando NSFileManager, así:
[[NSFileManager defaultManager] removeItemAtPath:plistPath error:NULL];
O si usted no quiere hacer eso, suponiendo que el plist es un diccionario, sólo tiene que cargar el de su paquete de aplicaciones y luego sobreponen a los datos en sus documentos, así:
NSDictionary *originalPlist = [NSDictionary dictionaryWithContentsOfFile:bundleFile];
[originalPlist writeToFile:documentsFile atomically:YES];
que sobrescribirá el archivo guardado con el archivo original.
1
NSFileManager *fileManager = [NSFileManager defaultManager];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *fullPath = [documentsDirectory stringByAppendingPathComponent:@"mobile-watchlist.plist"];
[fileManager removeItemAtPath: fullPath error:NULL];
0
También podría tratar simplemente de cambiar el nombre de su Plist. Eso es lo menos trabajo, creo.
+0
Entonces, ¿qué pasa con el anterior? –
Cuestiones relacionadas
- 1. Pasos para crear y editar un archivo plist en Xcode
- 2. ¿Cómo escribir datos en plist?
- 3. ¿Cómo puedo incluir datos principales en un proyecto iOS ya creado en Xcode?
- 4. datos de acceso plist
- 5. Xcode plist file - comentarios desaparecidos, archivo reformateado
- 6. crear un archivo plist programáticamente
- 7. edición plist en XCode 4: ¿Ya no puedes mover filas?
- 8. Cómo guardar MKMapRect en un plist
- 9. ¿Cómo elimino/elimino un virtualenv?
- 10. Cómo cargar un UIColor de un Plist
- 11. Parse Plist (NSString) en NSDictionary
- 12. Cómo ahorrar NSMutableArray en plist en iPhone
- 13. Rails 3 - ¿Cómo elimino las tablas de la base de datos que se han creado?
- 14. ¿Cómo elimino los signos de dólar ($) de los datos/escape de los caracteres especiales en R?
- 15. ¿Cómo elimino los espacios en blanco finales de un QString?
- 16. ¿Cómo expandir todos los nodos (o descendientes de los seleccionados) de un plist a la vez?
- 17. Almacenar imagen en plist
- 18. ¿Cómo elimino todos los intervalos?
- 19. Crear archivo de manifiesto inalámbrico (extensión .plist) con Xcode
- 20. cómo elimino un nodo adicional
- 21. ¿Cómo elimino una base de datos MySQL?
- 22. Obtener datos de la plist Información
- 23. ¿Cómo elimino un documento incrustado en mongomapper?
- 24. ¿Cómo elimino un marcador remoto en Mercurial?
- 25. En Python 2.5, ¿cómo elimino un subproceso?
- 26. ¿Cómo elimino un marcador en Google Maps?
- 27. ¿Cómo elimino un procedimiento almacenado en postgresql?
- 28. En IE, ¿cómo elimino un filtro?
- 29. ¿Cómo elimino un repositorio local en git?
- 30. ¿Cómo sabe Xcode para quién fue creado el proyecto?
Gracias eso era lo que estaba buscando. Supongo que solo necesitaba que alguien me lo explicara directamente. – gurooj
¿Es posible eliminar una sola entrada de un archivo plist? Básicamente estoy almacenando fechas en mi plist y quiero que, como la fecha almacenada, el plist caduque, esa fecha/entrada debe eliminarse del plist y el plist debe obtener refrescado. ¿Cómo puedo hacer eso? –
No lo eliminaría de la lista directamente, lo eliminaría del diccionario haciendo un NSMutableDictionary usando el método mutableCopy y luego usando el método removeObjectForKey :. Luego solo guarde el nuevo diccionario sobre la parte superior de la lista anterior. –