2008-12-21 4 views
1

Il est possible d'écrire le dictionnaire entier dans un objet de liste de propriétés, mais je voudrais rendre mon application plus efficace en n'écrivant que les parties de la liste de propriétés qui ont été modifiées.Est-il possible de sauvegarder uniquement les parties modifiées d'un objet de liste de propriétés?

Dites que j'ai une liste de propriétés avec plusieurs dictionnaires sous le nœud racine. Je voudrais modifier un dictionnaire et l'enregistrer, mais écrire la liste entière de propriété (y compris les dictionnaires non modifiés) est inutile. Y a-t-il des moyens de contourner cela? Je vous remercie!

Répondre

1

Si vous parlez d'écrire le dictionnaire dans un fichier, je ne pense pas qu'il existe un moyen de sauvegarder le tout.

La modification d'un élément pourrait modifier la longueur du fichier, ce qui modifierait les positions de tout le reste dans le fichier, de sorte qu'il serait impossible d'écrire uniquement les éléments modifiés. La seule raison que je pourrais voir pour vouloir faire ceci serait si vous avez un énorme fichier qui change souvent et prend beaucoup de temps à écrire. Si tel est le cas, vous devriez peut-être diviser la liste de propriétés en sections plus petites, plus faciles à gérer, qui peuvent être lues et écrites individuellement.

3

Il n'y a aucun moyen de faire ce que vous voulez. Cependant, vous devez savoir que CoreFoundation a été optimisé pour lire/écrire des fichiers plist. Vous ne devriez même pas commencer à vous inquiéter de quelque chose comme ça jusqu'à ce qu'il apparaisse dans le profilage comme un goulot d'étranglement.

Questions connexes