Quiero cargar el archivo plist del disco (documentos, caché de aplicaciones, ...) no desde un paquete de recursos.¿Cómo cargo un archivo plist del disco como NSDictionary en iOS?
14
A
Respuesta
39
Se puede cargar un plist desde cualquier ruta del archivo accesible con -initWithContentsOfFile: o +dictionaryWithContentsOfFile:
Cargar un plist desde un archivo, y crear el archivo si no existiera:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES);
self.plistFile = [[paths objectAtIndex:0]
stringByAppendingPathComponent:@"example.plist"];
self.plist = [[NSMutableDictionary alloc] initWithContentsOfFile:plistFile];
if (!plist) {
self.plist = [NSMutableDictionary new];
[plist writeToFile:plistFile atomically:YES];
}
23
un poco más limpio:
NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"plistName" ofType:@"plist"];
NSMutableDictionary *dict = [NSMutableDictionary dictionaryWithContentsOfFile:plistPath];
+0
depende del directorio, documentdirectory! = Ruta del recurso – M0rph3v5
Cuestiones relacionadas
- 1. Guardar NSDictionary a plist
- 2. Parse Plist (NSString) en NSDictionary
- 3. Plist Array para NSDictionary
- 4. iOS: almacene dos NSMutableArray en un archivo .plist
- 5. Cómo convierto NSDictionary en NSData como un plist (sin guardar el diccionario)
- 6. ¿Cómo cargo el archivo localizado apropiado?
- 7. Restauración de un BOOL dentro de un NSDictionary desde un archivo plist
- 8. crear un archivo plist programáticamente
- 9. Cómo analizar un archivo .plist con php?
- 10. la lectura de un NSDictionary del tema plist con un valor BOOL
- 11. ¿Cómo cargo un archivo javascript dinámicamente?
- 12. ¿Cómo elimino un archivo del disco en IntelliJ IDEA?
- 13. ¿Cómo cargo automáticamente el teclado (iOS SDK)?
- 14. Cómo leer la estructura de datos del archivo de .Plist en NSArray
- 15. ¿Cómo cargo un archivo JavaScript con Jint en C#?
- 16. ¿Cómo cargo un archivo en un hash Perl?
- 17. Escribiendo una imagen enmascarada en un disco como archivo PNG
- 18. ¿Hay algo como NSDictionary en Android?
- 19. ¿Cómo escribir datos en plist?
- 20. Compartiendo un archivo plist utilizando iCloud
- 21. Instalar aplicaciones iOS desde un plist local (nulo) desea instalar
- 22. ¿Cómo puedo obtener un archivo sin eliminarlo del disco?
- 23. Plist contiene el carácter "&"
- 24. ¿Cómo cargo un archivo html local en Jsoup?
- 25. ¿Cómo cargo un archivo en la consola de Python?
- 26. Cómo ahorrar NSMutableArray en plist en iPhone
- 27. Usando un objeto como clave para NSDictionary
- 28. ¿Cómo cargo una cadena en un FileStream sin ir al disco?
- 29. ¿es posible guardar datos de NSMutableArray o NSDictionary como archivos en iOS?
- 30. Crear mi propia extensión de archivo basada en plist
Tenga en cuenta que el objeto raíz del Plist debe ser un diccionario. Si el objeto raíz es una matriz, debe usar [[NSArray alloc] initWithContentsOfFile: plistFile]; – Ash