objective c - tipos - Obtención de un identificador de tipo uniforme para una extensión determinada
tipos de virus informaticos y sus caracteristicas (2)
Estoy tratando de encontrar alguna manera en Cocoa para traducir desde extensiones de archivo a los Identificadores de Tipo Uniforme. Es decir, quiero encontrar alguna forma de hacer esto:
".jpg" => "public.jpeg"
".html" => "public.html"
".ttf"=> "public.truetype-font"
He buscado en los documentos de NSWorkspace pero no pude encontrar nada. Lo más cerca que pude conseguir fue:
- (NSImage *)iconForFileType:(NSString *)fileType
que devuelve el icono para una extensión de archivo, y
– (NSString *)preferredFilenameExtensionForType:(NSString *)typeName
Eso hace exactamente lo contrario de lo que estoy tratando de hacer. ¿Alguno de ustedes sabe cómo hacer esto?
Realmente espero no tener que revisar muchas extensiones a mano.
Gracias por adelantado.
Necesitaba esto hace una semana:
NSString * UTI = (NSString *)UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension,
(CFStringRef)[myFilePath pathExtension],
NULL);
Si ejecuto esto en las extensiones @ "php", @ "jpg", @ "html" y @ "ttf", se imprime:
public.php-script
public.jpeg
public.html
public.truetype-ttf-font
Puede usar la Terminal e invocar mdls, que le brinda todo tipo de información sobre un determinado tipo de archivo, incluidas las UTI.
mdls /myPath/to/myFile.ext
mdls le mostrará las UTI asociadas en kMDItemContentTypeTree (también es posible llamar a mdls desde su aplicación Cocoa por cierto).