Étiquettes du finder Mac OS X en Java
J'ai un répertoire qui contient plus de répertoires. Ils sont triés par"Étiquettes".
Je veux aussi les utiliser dans mon programme Java. Mais comment obtenir le Label d'un fichier?
Y a-t-il une bibliothèque? Ou dois-je écrire smth via JNA/JNI? Ou peut-être un Applescript-Pont?
En bref: Comment obtenir l'étiquette d'un fichier sous Mac OS X?
2 answers
Utilisez l'outil de ligne de commande xattr pour obtenir les métadonnées du ou des fichiers en question.
Si le fichier a une étiquette, il y aura un attribut qui ressemble à ceci:
Com.pommier.métadonnées: kMDLabel_qygkxhrfarhtxanqhi264amkku
Vous pouvez ensuite corréler la chaîne d'étiquette avec la couleur de l'étiquette.
Modifier Je crois qu'osascript pourrait fournir une interface plus facile pour obtenir/définir les métadonnées étendues sur les fichiers.
Pour 10.6
et au-dessus ,vous pouvez utiliser la méthode d'instance NSURL.
- (BOOL)getResourceValue:(id *)value forKey:(NSString *)key error:(NSError **)error
Et
- (BOOL)setResourceValue:(id)value forKey:(NSString *)key error:(NSError **)error
Avec NSURLLabelNumberKey
ou NSURLLabelColorKey
.
Pour 10.5
, utilisez apple script.