Don't think so, archiving is not serialization and it's just a dump of the 
object in XML/binary format, so you can't have reserved keyword.


The plist look definitively OK. (it's even possible to import it in Plist 
Editor as a text formatted plist if you remove the extra '{' '}' enclosing the 
inner array).

I'm almost sure it will not help, but you may try the 10.6 function which 
returns an NSError. Maybe the NSError is more informative than the returned 
error string.

And you can also try with subset of the list to determine if a specific entry 
in your list is the culprit.

Le 18 févr. 2010 à 12:29, Matt Gough a écrit :

> Don't know, but maybe 'id' is reserved.
> 
> I seem to recall a similar issue with archiving strings that were "NULL" or 
> "nil" or something.
> 
> Matt
> On 18 Feb 2010, at 11:25:10, Graham Cox wrote:
> 
>> I have a structure I'm trying to write as an xml plist. The structure is an 
>> array of dictionaries, each dictionary contains a string "catname" and 
>> another array of dictionaries, "items". The second level of dictionaries 
>> consist of two strings each, "id" and "name".
>> 
>> Example:
>> 
>> (gdb) po catList
>> <NSCFArray 0x2e846a30>(
>> {
>>   catname = "Legends & Inset Maps";
>>   items = {(
>>       {
>>       id = "7CBC1609-ADFB-4CA9-A748-CABE9076842F";
>>       name = "World - eastern hemisphere";
>>   },
>>       {
>>       id = "402DEB4D-8C2E-4F4D-9151-E6BA01D194E7";
>>       name = "World - western hemisphere";
>>   },
>>       {
>>       id = "6500292B-FDE1-45B7-AFD9-8A0136B25717";
>>       name = "Legend 4";
>>   },
>>       {
>>       id = "CC96E4F2-1B20-4496-8962-15B617B3FAF9";
>>       name = "Legend 2";
>>   },
>> ... hundreds of similar entries omitted...
>> )};
>> },
>> {
>>   catname = "DrawKit Defaults";
>>   items = {(
>>       {
>>       id = "6B1A0430-204A-4012-B96D-A4EE9890A2A3";
>>       name = "Basic Track";
>>   },
>>       {
>>       id = "1DFD6D8A-6C8B-4E4B-9186-90F64654F79F";
>>       name = Basic;
>>   },
>>       {
>>       id = "326CF635-7863-42C6-900D-CFFC7D57505E";
>>       name = "Helvetica 18.0pt";
>>   }
>> )};
>> }
>> )
>> 
>> When I submit this array to the serialization method:
>> 
>>      NSData* data = [NSPropertyListSerialization 
>> dataFromPropertyList:catList format:NSPropertyListXMLFormat_v1_0 
>> errorDescription:&errDesc];
>> 
>> (I know this is deprecated from 10.6 forward but I need to support 10.5 for 
>> now)
>> I get the error:
>> 
>> "Property list invalid for format"
>> 
>> Since I'm only using arrays, dictionaries and strings, that should be a 
>> valid plist, shouldn't it? I've missed something, but what?
>> 
>> I'm also wondering why some strings appear quoted and others are not when I 
>> dump the structure in gdb, and whether that's significant.
>> 
>> --Graham
>> 
>> 
>> 
>> 
>> _______________________________________________
>> 
>> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
>> 
>> Please do not post admin requests or moderator comments to the list.
>> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
>> 
>> Help/Unsubscribe/Update your Subscription:
>> http://lists.apple.com/mailman/options/cocoa-dev/mgough%40humyo.com
>> 
>> This email sent to mgo...@humyo.com
> 
> _______________________________________________
> 
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
> 
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
> 
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/cocoa-dev/devlists%40shadowlab.org
> 
> This email sent to devli...@shadowlab.org

-- Jean-Daniel




_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to