NSKeyedUnarchiver initForReadingWithData: непонятный сбой архива

У меня есть следующая проблема при распаковке файла, который содержит строку xml.

Он выходит из строя по следующей строке:

NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data]; 

«данные» (27580 байт) исходят из:

 NSMutableData *data = [NSData dataWithContentsOfURL:url]; 

И авария я получил:

Завершение приложения из-за неотображенного исключения «NSInvalidArgumentException», причина: « * – [NSKeyedUnarchiver initForReadingWithData:]: непонятный архив (0x62, 0x70, 0x6c, 0x69, 0x73, 0x74, 0x30, 0x30)

Файл был создан таким образом:

 NSMutableData *data = [[NSMutableData alloc] init]; NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data]; NSData *project = [ProjectToXML convertProject:SelectedProject]; [archiver encodeObject:project forKey:kProjectKey]; [archiver finishEncoding]; 

'convertProject:' в основном создает NSMutableString с содержимым xml и преобразует его в NSData таким образом ('encoding' является utf-8):

 [xmlString dataUsingEncoding: CFStringConvertEncodingToNSStringEncoding(CFStringConvertIANACharSetNameToEncoding((__bridge CFStringRef)encoding)) allowLossyConversion:NO]; 

Давайте будем гением компьютера.