Hopefully there is someone here who knows something about binary plist
files.  When an iPhone's firmware is upgraded in iTunes, a framework called
MobileSync creates a backup of the iPhone's data files.  The backup is
stored in .mdbackup files, in ~/Library/Application
Support/MobileSync/<targetId>/
I've found that the .mdbackup files are Apple binary plists (the magic is
bplist00, followed by 0xD4), however any attempts to read the files give the
error "Conversion of data failed. The file is not UTF-8, or in the encoding
specified in XML header if XML."  I've tried the Property List Editor and
the code below:

#import <Foundation/Foundation.h>
#import <stdio.h>

int main(int argc, char **argv)
{
        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

        NSString *path = @"./file42.mdbackup";
        NSData *plistData;
        NSString *error;
        NSPropertyListFormat format;
        id plist;
        plistData = [NSData dataWithContentsOfFile:path];

        plist = [NSPropertyListSerialization propertyListFromData:plistData
                        mutabilityOption:NSPropertyListImmutable
                        format:&format
                        errorDescription:&error];
        if(!plist)
        {
                NSLog(error);
                [error release];
        }
        NSLog(@"%s", plist);
        [pool release];
        return 0;
}


Is there are way to use the Cocoa classes to read this type of binary plist,
or am I stuck with straight C?  If C is the only way, does anyone have a
file structure (format) reference for binary plists?

Thanks

Ryan
_______________________________________________

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 [EMAIL PROTECTED]

Reply via email to