¿Cómo fusionar varios files Plist en uno?

Solo para comenzar, realmente no tengo idea de lo que estoy haciendo. Me dieron esta tarea para una pasantía, y realmente estoy aprendiendo a medida que avanzo. Tengo varios files Plist, que constan de alnetworkingedor de 22 elementos cada uno, y list de valores de colors. Necesito fusionar todos estos files en uno solo, y realmente no estoy seguro de cómo hacerlo. Tengo una cierta estructura que necesito pasar, y realmente no estoy seguro de cómo hacerlo. Me dijeron que abriera los plists en texteditor y luego pegue todo el código sin formatting en un file de text, esto no parece funcionar ya que solo termino obteniendo los valores para el primer plist que pegué en el file de text. Cualquier tipo de ayuda sería buena. Gracias.

Hay varias forms de manejar esto. Por defecto, un plist es una forma especial de file XML. Si descubre la syntax, de hecho puede usar un editor de text para unir los contenidos de varios files juntos, pero debe asegurarse de hacerlo bien.

Un file Plist tiene un encabezado específico para todo el file. No podría copyr / pegar múltiples pliques juntas porque luego se repetirían ese encabezado.

La siguiente forma de hacerlo es mediante progtwigción. Si puede averiguar el tipo de colección externa que contienen estos files (probablemente una matriz o un dictionary), entonces podría escribir algunas líneas de código que se leen en cada una de las pliestas como matrices, las combina usando el código NSArray (suponiendo que contengan matrices de colors) y luego guarde la matriz combinada en una nueva stack. Como dice vadian, también puede usar la class NSPropertyListSerialization. Esa es una forma más general de manejar files de plist, pero también es más compleja y difícil de entender.

Una tercera forma de hacerlo es en Xcode. Si hace clic derecho en un file de plist y selecciona "abrir en Xcode", debería darle el editor de list de properties de Xcode. Luego puede copyr y pegar el contenido de los files y save los resultados en un file nuevo.

Suponga que from.plist contiene las keys 1, 2 y to.plist contiene 2, 3

Ejecuta esto:

 /usr/libexec/PlistBuddy -x -c "Merge from.plist" to.plist 

to.plist contendrá 1, 2, 3

¡¡Me lo imaginé!! Primero crea la estructura o usa la plantilla que se te ha dado. Sugiero abrir esta plantilla / estructura en Xcode, ya que facilita cambiar entre ver la list como un plist y un código fuente. Abra su plantilla como un código fuente. Luego, abra cada uno de sus plists en el editor de text, y copie y pegue el código de sus plists en el área apropiada en el código fuente de sus templates, luego puede verlo en Xcode como una list de properties para asegurarse de que sea correcto. Lo único que debe tener cuidado aquí es asegurarse de que no obtiene errores. ¡De lo contrario, esto funciona genial!