Относительно комментариев и других сообщений о внутренней gzip реализации, они не то же! GZip не создает заголовок, требуемый для архивации; это только полезно для "архивирования" одного файла или потока.
Надлежащие архивы zip содержат заголовок, которые перечисляют все сжатые файлы и куда в сжатых данных они прибывают, и поэтому Вам нужно что-то, что делает заголовок. Это означает SharpZipLib, одну из многих коммерческих версий или использования чего-то внешнего с привязкой.NET как 7zip.
Только на ничтожном шансе кто-то хочет сказать это: "Но я вижу .gz
файлы в Linux все время!" - они - просто единственные файлы, и .tar.gz
не исключение - tar является архивным файлом. Эти .gz
тот сжатый архив.
Глядя на документацию NSError , я узнаю, что вам нужно сделать что-то вроде:
NSLog(@"%@",[error localizedDescription]);
Это должно дать вам удобочитаемость вывод
NSLog(@"Error: %@", error);
Gives me a null message
Then error
is nil
, not an NSError instance.
Вот примерный метод, который я использую для регистрации ошибок при разработке; (Не для Cocoa-touch)
// Execute the fetch request put the results into array
NSError *error = nil;
NSArray *resultArray = [moc executeFetchRequest:request error:&error];
if (resultArray == nil)
{
// Diagnostic error handling
NSAlert *anAlert = [NSAlert alertWithError:error];
[anAlert runModal];
}
NSAlert заботится об отображении ошибки.