Cocoa значок для типа файла?

Если у меня есть файл, я могу получить значок, выполнив что-то вроде:

NSImage *iconImage = [[NSWorkspace sharedWorkspace] iconForFile: @"myFile.png"];

Но если я просто хотел получить значок для определенного типа файла (например, значок, связанный с файлами png, без наличия уже имеющегося "myFile.png" ), я не уверен, как это сделать.

Любые предложения приветствуются!

Ответ 2

Сначала вы можете определить тип файла (UTI), а затем передать его, чтобы получить значок:

NSString *fileName = @"lemur.jpg"; // generic path to some file
CFStringRef fileExtension = (__bridge CFStringRef)[fileName pathExtension];
CFStringRef fileUTI = UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, fileExtension, NULL);

NSImage *image = [[NSWorkspace sharedWorkspace]iconForFileType:(__bridge NSString *)fileUTI];