2012-03-21 15 views
14

siempre que quiera obtener datos de un archivo plist utilizo el siguiente código:Obtener datos de la plist Información

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"FILE_NAME" ofType:@"plist"]; 
NSDictionary *plistData = [NSDictionary dictionaryWithContentsOfFile:filePath]; 

Pero ahora estoy tratando de leer en los datos de la plist información, y es rutaArchivo nulo. ¿Hay alguna forma diferente de obtener datos de Info plist?

+0

Gracias, eso resolvió mi problema. – Darren

+0

Posible duplicado de [iOS: acceso a las variables de la aplicación-info.plist en el código] (http://stackoverflow.com/questions/9530075/ios-access-app-info-plist-variables-in-code) – thegrinner

Respuesta

40

De una anterior SO respuesta mía. Atributos del info.plist para su proyecto son directamente accesibles por la siguiente ...

[[NSBundle mainBundle] objectForInfoDictionaryKey:key_name]; 

su ruta al archivo es nulo, simplemente porque no puede encontrar el archivo - comprobar la ortografía & de verificación si el archivo que está intentando leen de es en realidad en el haz etc.

+0

. Pude obtener el plist utilizando [NSBundle mainBundle] .infoDictionary. La información no estaba en la lista de recursos del paquete de copia para el objetivo. ¿Está la información en otro lugar? – Darren

1

No creo que haya otra manera (a menos que sea el archivo info.plist luego vea el comentario de Damo), sino que me enfocaría en averiguar por qué el archivoPath es nulo, tal vez el archivo plist ya no está bajo objetivo> fases de compilación> copiar los recursos del paquete?

+1

Pude para obtener el plist usando [NSBundle mainBundle] .infoDictionary. La información no estaba en la lista de recursos del paquete de copia. Supongo que hay algo especial acerca de la información plist? – Darren

+0

Bien manchado: nunca lo hubiera pensado, pero al revisar mi proyecto actual, el info.plist también está desmarcado para la copia – Damo

0

Reemplazar

[[NSBundle mainBundle] pathForResource:@"FILE_NAME" ofType:@"plist"] 

con

[[NSBundle mainBundle] pathForResource: @"Info" ofType: @"plist"] 
Cuestiones relacionadas