Code:
NSMutableString* stringEncodedPlist = [[NSMutableString alloc] init];
for( NSDictionary* item in root )
{
NSArray* contentAry = [item objectForKey:@"content"];
NSString* name = [contentAry objectAtIndex: 1];
NSDictionary* subItem = [contentAry objectAtIndex: 0 ];
NSString* subText = [subItem objectForKey:@"Text"];
NSString* subName = [subItem objectForKey: @"Name"];
//here you want to combine all the elements
NSString* result = [NSString stringWithFormat:@"****%@****%@****%@", subText, subName, name];
[stringEncodedPlist appendString: [NSString stringWithFormat:@"%@^^^", result];
}
//do other stuff
[stringEncodedPlist release];
Now you should have a string where each "Item" in your plist is sepearted by '^^^'. Then within each "Item", the contents of the "Content" array, and the "Name" should all be separated by "***". I'm sure you can easily reverse this operation without me having to explain it.
By the way, I havent tested this, it's just a shot in the right direction, but theoretically it should work, although it may not be the best solution.